Xcode 你能在-(void)viewdide:(BOOL)动画中嵌套iAction(按钮)吗?怎么用?
我确定我需要我的按钮操作(findMe)作为ViewDidDisplay的一部分,并且不能将其作为单个iAction,因为它显示了位置错误 这可能吗 B:这样做有意义吗 C:它看起来像什么 我知道我当前的代码是错误的,如下所示:Xcode 你能在-(void)viewdide:(BOOL)动画中嵌套iAction(按钮)吗?怎么用?,xcode,xcode4,xcode4.2,ibaction,viewdidappear,Xcode,Xcode4,Xcode4.2,Ibaction,Viewdidappear,我确定我需要我的按钮操作(findMe)作为ViewDidDisplay的一部分,并且不能将其作为单个iAction,因为它显示了位置错误 这可能吗 B:这样做有意义吗 C:它看起来像什么 我知道我当前的代码是错误的,如下所示: -(void)viewDidAppear:(BOOL)animated { if (findMe == YES) { self.mapView.showsUserLocation = YES; [mapView setCenterCoordina
-(void)viewDidAppear:(BOOL)animated
{
if (findMe == YES)
{
self.mapView.showsUserLocation = YES;
[mapView setCenterCoordinate:mapView.userLocation.coordinate animated:YES];
}
}
谢谢 你的问题措辞混乱且不完整(请包括有错误的代码和确切的错误消息),但我会回答你可能会问的三件事 如果您的问题是希望两个方法中的代码相同,请将两个方法的公共部分提取到第三个方法中,并让它们都调用该方法
- (IBAction) button {
stuff
[self commonPart];
}
- (void) viewDidAppear {
stuff
[self commonPart];
}
- (void) commonPart {
stuff they both do
}
如果您的问题是需要了解ViewDidDisplay方法中UI的状态,则可以使用IBOutlet引用有问题的控件
- (void) viewDidAppear {
if (self.findMeButton.someThingYouWantToCheck) {
self.mapView.showsUserLocation = YES;
[mapView setCenterCoordinate:mapView.userLocation.coordinate animated:YES];
}
}
如果您的问题是需要存储按钮是否已按下,以便以后可以基于它执行不同的操作,只需向对象添加一个BOOL实例变量,并在按钮按下的iAction中将其设置为“是”
这些都是你想做的吗?是的,我想你回答的后一个问题就是我想做的。对不起,我是初学者。我希望该按钮在用户按下按钮的任何给定时间在视图中执行“showsUserLocation”。所以,我不想存储它是否被按下,我只想它在按下时立即做出反应。对不起,我把你弄糊涂了!不能在另一个方法中执行一个方法的一部分。您可以将代码移动到一个单独的方法,如我的第一个示例所示,或者复制粘贴它。第一部分为我解决了问题,我完成了我想要的。:)