objective c - मैं एक आधा UITableView आधा MapView UIView के बीच में एक बटन के साथ लागू करना चाहते हैं




objective-c ios (2)

खैर, यह वह है जो मैं अपने ऐप में करना चाहता हूं: मैं एक UIView को स्क्रीन के शीर्ष छमाही पर एक मानचित्र के साथ और दूसरी छमाही के साथ एक टेबलव्यू के बीच में दो बटन के साथ आरोपित करना चाहूंगा। यदि मैं एक बटन को दबाता हूं तो मानचित्र को पूर्ण स्क्रीन मिल जाएगा और अगर मैं दूसरा टैब दबाता हूँ तो तालिका सभी दृश्य स्क्रीन पर फिट हो जाएगी।

कोई उपाय?


UINavigationController की तरह एक दृश्य नियंत्रक में एक फ्रेम के साथ एक MKMapView को देखने के शीर्ष आधा का आकार और इसे अपने दृश्य नियंत्रक के उपदृश्य के रूप में जोड़ें तो मैं अपने बटन को पकड़ने के लिए एक यूआईटूलबार बनाऊंगा और एमकेमैपदृश्य के निचले भाग के साथ इसके फ्रेम की रेखा के ऊपर बनेगा। अंत में एक दूसरे के नीचे फ्रेम के साथ एक UITableView बनाएँ (सुनिश्चित करें कि आप इसे प्रतिनिधियों को हुक कर रहे हैं)

फिर अपने UIBarButtonItem के लक्ष्य को असाइन करें जो मैप को उस पद्धति पर पूर्ण स्क्रीन बनाता है जो इस तरह से तीनों दृश्यों के फ़्रेम को एनिमेट करता है:

[UIView animateWithDuration:0.24 
                      delay:0.0
                    options:UIViewAnimationCurveEaseOut
                 animations:(void (^)(void)) ^{
                     self.toolbar.frame = CGRectMake(0, MAP_HEIGHT_FULLSCREEN, 320, TOOLBAR_HEIGHT);
                     self.mapView.frame = CGRectMake(0,0,320,MAP_HEIGHT_FULLSCREEN);
                     self.tableView.frame = CGRectMake(0, MAP_HEIGHT_FULLSCREEN+TOOLBAR_HEIGHT, 320, MAP_HEIGHT_FULLSCREEN-MAP_HEIGHT);
                 }
                 completion:^ (BOOL finished){}
 ];

आप कैसे योजना बना रहे हैं, दोनों दृश्य बनाएं, एक बटन क्लिक पर, पूर्ण स्क्रीन पर फ़िट होने के लिए एक दृश्य का फ्रेम बदल दें, यदि आप दूसरे बटन पर क्लिक करते हैं, तो दूसरे दृश्य में एक ही बात करें





mkmapview