我遇到了prepareforsegue风格的问题。我是,因为你可以告诉我的问题相当新的Xcode,我只是没有得到这个权利:准备继续 - 只是没有得到这个权利
我有一个LAFirstView从解析读取数据,我保存在一个名为'kundUppgifter'的数组中。
现在我需要从objectatindex:index到一个名为 LASecondView的下一个视图发送文本。 在LASecondView中,我已经声明了一个名为myLabel的标签,我希望文本显示出来。
我一直在阅读关于它在这里在Stackoverflow,但问题是,当我读其他人的答案我不明白什么来替换的东西。我在LAFirstView中的代码:看起来像这样,当然它不起作用,但我确实从NSLog中得到了正确的结果。 希望能获得帮助:
//IMPLEMENT THIS ONE (WHEN DISCLOSURE BUTTON IS PRESSED):
- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control{
[self performSegueWithIdentifier: @"openingHours" sender: self];
NSUInteger index = [mapView.annotations indexOfObject:view.annotation];
PFObject *tempObject = [kundUppgifter objectAtIndex:index];
NSLog(@"%lu", (unsigned long)index);
NSLog(@"%@", [tempObject objectForKey:@"CNAME"]);
}
不要依赖按照地图视图的'annotations'数组的顺序 - 它不保证以任何顺序。相反,在注释对象本身(即view.annotation)中保留任何需要的数据(或至少是引用它的数据)。对于segue部分,请参阅http://stackoverflow.com/questions/14805954/mkannotationview-push-to-view-controller-when-detaildesclosure-button-is-clicked。 – Anna 2014-09-29 01:31:12
是的,谢谢你,我发现它不是任何顺序:(我发现这样做:NSString * passedId = view.annotation.title,我得到了我在parse.com下的@ “cname”,它传递给一个名为kundUppgifter的数组,因此不是设置这个:PFObject * tempObject = [kundUppgifter objectAtIndex:index]我想设置它(但它不工作:错误代码):PFObject * tempObject = [ kundUppgifter objectForKey passedId];我没有得到如何做view.annotation你建议,因为我对Xcode是如此的新,你可以解释一点吗?:D – Kardemumma09 2014-09-29 22:20:30