我用4个UIImageView和4个UIButton制作应用程序。每个按钮都连接到一个UIAlerView,该UIAlerView具有打开光盘库的选项,因此可以更改UIImageView。 我的问题是,我不知道如何告诉UIAlertView哪个UIButton被按下。按下哪个按钮
如何写出哪个按钮被按下?
我用4个UIImageView和4个UIButton制作应用程序。每个按钮都连接到一个UIAlerView,该UIAlerView具有打开光盘库的选项,因此可以更改UIImageView。 我的问题是,我不知道如何告诉UIAlertView哪个UIButton被按下。按下哪个按钮
如何写出哪个按钮被按下?
可以将所有按键连接到另一种方法,如果您使用的界面生成器或将其添加不同的目标。它会更容易但不可扩展,或者不会与动态数量的按钮兼容。
使用相同的目标&选择添加到所有的按钮:
[_yourButton1 addTarget:self
action:@selector(aButtonTapped:)
forControlEvents:UIControlEventTouchDown];
和内部A按钮抽头哪个按钮被窃听方法检查并据此采取行动:
- (void) aButtonTapped:(id) sender{
if (sender == _yourButton2) //Do sth
}
使用接口构建器在这两种情况下都会更容易。
有很多方法可以做。
在操作中,如果您记录发件人,它将显示按下哪个按钮。
-(IBAction) myFirstButton: (id) sender {
NSLog(@"User clicked %@", sender);
// Do something here with the variable 'sender'
/*if ([[sender title] isEqualToString:@"Button 1"]) {
//do whatever you want
*/
}
第二种方法是通过发布和观察通知。
您可以添加标签到您的按钮。
在网上有足够的教程涵盖了这个主题,通过他们的工作,如果问题仍然存在,再来这里。 – jimpic
http://stackoverflow.com/questions/13575037/what-are-resources-for-learning-objective-c/13577666#13577666 –
[你有什么尝试?](http://whathaveyoutried.com) – thegrinner