学习笔记:通过 objc_setAssociatedObject alert 和 button关联 及传值
来源:互联网 发布:沈阳java培训 编辑:程序博客网 时间:2024/06/10 23:34
//唯一静态变量key
static const char associatedkey;
static const char associatedButtonkey;
- (IBAction)sendAlert:(id)sender
{
NSString *message =@"我知道你是按钮了";
UIAlertView *alert = [[UIAlertViewalloc]initWithTitle:@"提示"message:@"我要传值·" delegate:selfcancelButtonTitle:@"确定" otherButtonTitles:nil];
alert.delegate =self;
[alert show];
//#import <objc/runtime.h>头文件
//objc_setAssociatedObject需要四个参数:源对象,关键字,关联的对象和一个关联策略。
//1源对象alert
//2 关键字 唯一静态变量key associatedkey
//3 关联的对象 sender
//4 关键策略 OBJC_ASSOCIATION_RETAIN_NONATOMIC
objc_setAssociatedObject(alert, &associatedkey, message,OBJC_ASSOCIATION_RETAIN_NONATOMIC);
objc_setAssociatedObject(alert, &associatedButtonkey, sender,OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
//通过 objc_getAssociatedObject获取关联对象
NSString *messageString =objc_getAssociatedObject(alertView, &associatedkey);
UIButton *sender = objc_getAssociatedObject(alertView, &associatedButtonkey);
_labebutton.text = [[sendertitleLabel]text];
_ThisLabel.text = messageString;
//使用函数objc_removeAssociatedObjects可以断开所有关联。通常情况下不建议使用这个函数,因为他会断开所有关联。只有在需要把对象恢复到“原始状态”的时候才会使用这个函数。
}
demo http://download.csdn.net/detail/lengshengren/6594365
- 学习笔记:通过 objc_setAssociatedObject alert 和 button关联 及传值
- 通过 objc_setAssociatedObject alert 和 button关联 及传值
- iOS开发-通过 objc_setAssociatedObject alert 和 button关联 及传值
- objc_setAssociatedObject通过alert传值
- objc_setAssociatedObject通过alert传值
- objc_setAssociatedObject通过alert传值
- objc_setAssociatedObject通过alert传值
- 关联 objc_setAssociatedObject
- objc_setAssociatedObject关联
- objc_setAssociatedObject关联
- IOS学习 关联(objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObject)
- iOS项目开发实战(Swift)—Button和Alert学习
- 关联 objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObjects
- 关联objc_setAssociatedObject,objc_getAssociatedObject
- iOS关联(objc_setAssociatedObject)
- iOS关联,objc_getAssociatedObject, objc_setAssociatedObject
- 关联(objc_setAssociatedObject、objc_getAssociatedObject)
- OC关联objc_setAssociatedObject
- dwz框架 时间控件不支持onclick,onchange事件
- Win7 64位环境下JDK和Eclipse的选择与安装
- sendEmail发送带有附件的邮件
- objc_msgSend () 错误
- vim编辑器设定--鸟哥Linux私房菜基础篇
- 学习笔记:通过 objc_setAssociatedObject alert 和 button关联 及传值
- C++ Programming skill
- jquery easy ui layout
- 机房收费系统———如何将MSFlexGrid中的数据导入到Excel中
- Oracle11g远程连接配置
- [图像识别]SIFT算法
- ARM Architecture C 语言寻址解析—— 从U-Boot relocation所展开的探索(二)
- C++内联函数
- knockout前段框架学习