ios - How to send value from viewControllerA to viewControllerB? -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 35 उत्तरों
ए
UIButton < / कोड> शीर्षक के साथ--- & gt; मुफ्त सिक्के - दबाएं & lt; ---- परviewControllerA दबाया जाता है।viewControllerA :< कोड> - (IBAction) ट्रिगर वीडियो [[AdColony playVideoAdForZone: @ "छिपाई-कोड-गोपनीयता" के साथ डिलीगेट: शून्य के साथ V4VCPre पॉपअप: हाँ और V4VCPostPopup: हाँ]; }
जब यह क्लिक किया जाता है तो 50 सिक्के प्राप्त होते हैं:
// निरंतर भंडारण से मुद्रा संतुलन प्राप्त करें और इसे प्रदर्शित करें - (शून्य) अपडेटCurrencyBalance {NSNumber * wrappedBalance = [[NSUserDefaults मानक उपयोगकर्ता डीफॉल्ट] ऑब्जेक्टफ़ोरेकी: केकुरेंसीबल्नेस]; एनएसयूइन्टेजर संतुलन = लिपटेबिलेंस & amp; amp; [लिपटेबिलेंस हैकिंडऑफ़ क्लास: [एनएसएनम्बर वर्ग]]? [लपेटा गया बैलेंस अहस्ताक्षरित अन्तःव्यू]: 0; [मुद्रालैबल सेटटैक्स्ट: [NSString stringWithFormat: @ "% u", संतुलन]]; }लेकिन इन सिक्केों को केवल
viewControllerB पर दिखाया जाना चाहिए,lblpts नामक लेबल पर। या कम से कम दोनों ही मूल्यों के रूप में दिखाए जा रहे हैं!मैंने ints का उपयोग करने की कोशिश की है: उदा।
int बिंदु , औरobjectForKey: @ "point" , उदा।:savedStock = [[NSMutableDictionary alloc] initWithContentsOfFile: पथ]; nPoint = [[[सहेजे गए स्टोक ऑब्जेक्टफोरके: @ "प्वाइंट"] इंटवल्यू]; [_lblpts setText: [NSString stringWithFormat: @ "% d", nPoint]];लेकिन ऐसा लगता है, मैं संतुलन को केवल
viewControllerB लेबल पर ही नहीं दिखा सकता!आपको
viewControllerB में एक प्रॉपर्टी वैरिएबल होना चाहिए और पॉइंट्स के साथ उस वेरिएबल को प्रारंभ करने के लिएviewControllerB को दबाए रखें।यदि आप स्टोरीबोर्ड का उपयोग कर रहे हैं तो:
[आत्म प्रदर्शन सीग्यू विथआईडेंटिफायर: @ "सेग्यूबी" प्रेषक: स्व];में
prepareForSegue विधि नवीनतम बिंदुओं के साथ संपत्ति चर अद्यतन करें।- (शून्य) तैयारएफ़ोर्सग्यू: (UIStoryboardSegue *) segue प्रेषक: (आईडी) प्रेषक {यदि ([segue.identifier है EqualToString: @ "SegueB"]) {DetailVCB * detailB = (DetailVCB *) segue.destinationViewController; detailB.points = 50; // चर जिसमें नवीनतम अंक हैं }}यदि आप XIB का प्रयोग कर रहे हैं तो आप इसे इसे
ViewControllerA.m में जोड़ सकते हैं:ViewB * ScreenB = [[[[ViewB alloc] initWithNibName: @ "व्यूबिनीब" बंडल: शून्य] ऑटोरेक्वेस]; ScreenB.points = शेष; // संतुलन नवीनतम चर होने वाले चर है [आत्म। नेविगेशन नियंत्रक पुश ViewController: ScreenB एनिमेटेड: हाँ];में
ViewControllerB.h फ़ाइल संपत्ति घोषणा को इस प्रकार जोड़ें:@property (nonatomic, असाइन करें) NSInteger अंक;में
ViewControllerB.m फ़ाइल:- (शून्य) दृश्यडिडलोड {NSString * str = [NSString stringWithFormat: @ " % D ", self.points]; [आत्म। पॉइंट्सएलएल सेट टेक्स्ट: str]; }
Comments
Post a Comment