【发布时间】:2014-04-25 20:08:58
【问题描述】:
我是 xcode 的新手,我正在尝试制作一个通用的按钮按下方法。我希望它检查按钮的名称(而不是标题),然后我想做一些字符串操作来设置一些值。
我的 ViewController.h 中有一个按钮设置
@property (strong, nonatomic) IBOutlet UIButton *button_1_3;
然后我的 ViewController.m 中有一个通用方法
- (IBAction)buttonPress:(id)sender
{
UIButton *bSender = (UIButton *)sender;
self.char1Text1.text = bSender.titleLabel.text; // this is the bit that I am not getting
}
所以我的一堆按钮上会有相同的文本,我想看到的是“button_1_3”。我希望有一个“bSender.name”选项,但我还没有找到它。
任何帮助将不胜感激
【问题讨论】:
-
旁注:如果你的
UIButton没有被其他类调用,则不需要设置为@property。 -
你想要变量名吗?如果是,我认为这是不可能的。指针(button_1_3)包含了内存中对象的地址,但是内存中的对象不知道有哪些指针引用了它。
-
获取
UIButton名称有什么意义?如果要识别按下的是哪个UIButton,可以给每个按钮分配tag,通过bSender.tag获取tag的值 -
基本上我想要一种从按钮解析信息的方法,这样我就可以按下一个通用按钮。因此,如果我有一个名为“button1A”、“button1B”和“button2A”的按钮。我想知道我必须将一个变量设置为数字 1 或 2,并将另一个变量设置为字母 A 或 B。
-
为你的目的使用标签怎么样?
标签: ios objective-c uibutton