zoukankan      html  css  js  c++  java
  • ios扩展机制objc_setAssociatedObject,objc_getAssociatedObject

    这个可以解决变量传递问题, 就不用定义全局的了.

    使用例子:

    首先导入头文件:#import <objc/runtime.h>

    设置静态常量:static char alertinfokey;

    - (IBAction)showAlertAction:(id)sender {

        UIAlertView *alert = [[UIAlertView allocinitWithTitle:@"title" message:@"warn" delegate:selfcancelButtonTitle:@"cancel" otherButtonTitles:@"ok"nil];

        objc_setAssociatedObject(alert, &alertinfokey@"test value"OBJC_ASSOCIATION_RETAIN);

        [alert show];

        [alert release];

    }

    -(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{

        if (buttonIndex == 0) {

            NSLog(@"== : %@",objc_getAssociatedObject(alertView, &alertinfokey));

        }

    }

    输出结果:== : test value

  • 相关阅读:
    JavaScript操作DOM对象
    QTP(13)
    QTP(12)
    QTP(11)
    QTP(10)
    QTP(9)
    QTP(8)
    QTP(7)
    QTP(6)
    QTP(5)
  • 原文地址:https://www.cnblogs.com/willbin/p/3673385.html
Copyright © 2011-2022 走看看