के साथ मेरे पास एक सार्वभौमिक ऐप है, जहां मैं एक आईपैड और आईफोन स्टोरीबोर्ड के लिए एक ही नियंत्रक साझा कर रहा हूं। मैं एक UITableView पर एक UILongPressGestureRecognizer डाल दिया है, यह है कि यह एक ऐसी कार्रवाई एक segue प्रदर्शन कॉल जब एक सेल iPhone पर दबाया जाता है:readyForSegue को निष्पादन के बाद नहीं कहा जाता है: withIdentifier: पॉपओवर शैली
-(IBAction)showDetail:(id)sender {
UILongPressGestureRecognizer *gesture = (UILongPressGestureRecognizer*)sender;
if (gesture.state == UIGestureRecognizerStateBegan) {
CGPoint p = [gesture locationInView:self.theTableView];
NSIndexPath *indexPath = [self.theTableView indexPathForRowAtPoint:p];
if (indexPath != nil) {
[self performSegueWithIdentifier:SEGUE_DETAIL sender:indexPath];
}
}
}
segue एक 'पुश' के रूप में प्रदर्शन एक विस्तार दृश्य है। पहली बात यह है कि आपको नोटिस करना चाहिए कि प्रेषक एक एनएसआईएंडएक्सपैथ है, जो चयनित सेल को पार करने के लिए मिला एकमात्र तरीका है। शायद एक बेहतर समाधान है। सब कुछ ठीक काम करता है, एक अर्थ में कि segue किया जाता है, और तैयार करने से पहले फोर्ससेग भी कहा जाता है।
हालांकि ऐसा होता है कि आईपैड पर, मैंने सेग्यू पहचानकर्ता को पॉपओवर में बदल दिया है। अब चीजें काम में काम कर रही हैं, सीगू किया जाता है, लेकिन तैयार करें फॉरसेग्यू नहीं कहा जाता है और इसलिए गंतव्य दृश्य नियंत्रक स्थापित नहीं किया जाना चाहिए।
मैं क्या गलत कर रहा हूं?
मुझे एक ही समस्या का सामना करना पड़ रहा है। viewdidload को बुलाया जाता है लेकिन segue नहीं करता – 1dayitwillmake