【问题标题】:IBAction connected to IF statementIBAction 连接到 IF 语句
【发布时间】:2013-12-28 17:53:02
【问题描述】:

我有 2 个不同的按钮,它们在单个地图视图中触发一组不同的注释。我有一些动作方法可以淡出应该出现注释的按钮,但是我不知道如何在注释方法中说“如果激活了这个动作,那么从这个类中加载注释”。所以这是我当前的代码

- (void)queryForAllPostsNearLocation:(CLLocation *)currentLocation withNearbyDistance:(CLLocationAccuracy)nearbyDistance {
if (????? IBAction 1 is activated ?????) {
    NSString *button1 = @"Today";
}
if (????? IBAction 2 is activated ?????) {
    NSString *button1 = @"Tomorrow";
}
PFQuery *query = [PFQuery queryWithClassName:button1];

我希望我能恰当地传达我的问题,并且有人可以帮助我。

【问题讨论】:

  • “IBAction 已激活”是什么意思?
  • 第三个button1变量从何而来?

标签: ios if-statement annotations ibaction


【解决方案1】:

如果您问的是我认为您在问什么,并且“激活”是指“已被触摸”/“已被选中”,那么您正在做事倒退。不要检查是否在您的queryForAllPostsNearLocation 方法中选择了按钮,而是让您的按钮触发必要的查询。在下面的示例中,我将 button1button2 对应于 UIButtons,并将 NSString *button1 替换为 NSString *buttonText 只是为了让事情更清楚一些。

- (IBAction)buttonSelected:(id)sender {
    NSString *buttonText;
    if (sender == button1)
        buttonText = @"Today";
    else
        buttonText = @"Tomorrow";

    PFQuery *query = [PFQuery queryWithClassName:buttonText];
}

编辑:为了在这种情况下完成您想要的查询,您可以 (1) 将 currentLocation 和 nearDistance 存储为类变量,然后在 buttonSelected 中访问它们以便在那里完成查询,或者 (2) 您可以获取currentLocationnearbyDistance 中的 buttonSelected 值然后调用类似

的方法
// Modified to now include the button's text as an argument
-(void)queryForAllPostsNearLocation:(CLLocation *)currentLocation withNearbyDistance:(CLLocationAccuracy)nearbyDistance withButtonText(NSString*)buttonText

buttonSelected 中,然后从那里执行查询。

【讨论】:

  • 这很有意义,除了我如何将 PFQuery 包含在 queryForAllPostsNearLocation 中?
  • 感谢您的所有帮助,但有最后一个问题.. 一切正常,但我认为我遇到了问题,因为 (void)queryForAllPosts 立即加载并且在 buttonSelected 被触摸后不执行任何操作down.. 所以我要问的是,每次按下 buttonSelected 时是否有办法让 queryForAllPosts 更新和重新加载?
  • 是的,当然。此时,您在哪里调用 queryForAllPosts?您应该在 buttonSelected 方法中调用该方法(如我上面所做的那样修改)。
  • 当我将它包含在 buttonSelected 中时,它会给我一个错误,指出“使用未声明的标识符 'queryForAllPostsNearLocation'”
  • 如果你私信我你的代码,我可以帮你修复它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-23
  • 2019-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多