2012-09-19 5 views
19

में काम करता है मैं सिम्युलेटर का उपयोग करके आईफोन 5 के लिए अपना ऐप तैयार कर रहा हूं और मेरे पास है एक अजीब मुद्दा मिला जहां मेरे कुछ बटन, मेरे विचारों में से एक में आईफोन (रेटिना 4-इंच) सिम्युलेटर में काम नहीं करते हैं, लेकिन आईफोन (रेटिना 3.5-इंच) सिम्युलेटर में ठीक काम करते हैं। बटन टैप किए जाने पर बस कुछ भी नहीं करते हैं। क्या किसी और ने इस समस्या को अनुभव किया है?मेरा बटन आईफोन (रेटिना 4-इंच) सिम्युलेटर पर टच इवेंट्स का पता नहीं लगाता है, लेकिन आईफोन (रेटिना 3.5-इंच) सिम्युलेटर

मुझे यह पता लगाना मुश्किल समय है कि इस से कहां से शुरुआत करें। कहां से शुरू करने के लिए कोई सुझाव?

आपके सभी ज्ञान के लिए अग्रिम धन्यवाद!

+2

बस एक अनुमान है, लेकिन क्या आपने जांच की है कि कोई पारदर्शी विचार बटन ओवरलैप नहीं करता है? हो सकता है कि स्प्रिंग्स और स्ट्रेट्स ने आईफोन 5 के स्क्रीन रिज़ॉल्यूशन के साथ जो कुछ भी अपेक्षित नहीं किया था। – Sascha

+1

मुझे एक ही समस्या का सामना करना पड़ रहा है। मेरे मामले में नीचे क्षेत्र (शायद अतिरिक्त .5 इंच) उत्तरदायी नहीं है। वहां रखा गया टैब बार बटन काम नहीं करेगा, उस क्षेत्र से UITableView स्क्रॉल करने की कोशिश करने से भी काम नहीं करता है। क्या आपके बटन नीचे के क्षेत्र में भी स्थित हैं? – pennersr

+2

@pennersr: क्या आपने यह कोशिश की? यह मेरी मदद नहीं करता है, लेकिन उम्मीद है कि यह आपकी मदद करेगा। http://stackoverflow.com/questions/12414817/iphone-5-4-bottom-toolbar-not-responding – BeachRunnerFred

उत्तर

4

समस्याएं मेरे बटनों को ओवरलैप करने के कारण हुई थीं क्योंकि स्प्रिंग्स और स्ट्रेट्स सेटअप किए गए थे। बटन के जेड-ऑर्डर को समायोजित करने से समस्या ठीक हो गई। सबको शुक्रीया!

8

मेरे लिए, समाधान MainWindow.xib के लिए आकार ("सिम्युलेट मेट्रिक्स") को "रेटिना 4 पूर्ण स्क्रीन" पर सेट करना था। मुझे अन्य स्क्रीन के आकार को बदलने की आवश्यकता नहीं थी (वे अभी भी किसी के लिए सेट नहीं हैं)। MainWindow.xib को बदलने के बाद नीचे क्षेत्र फिर से क्लिक करने योग्य हो जाता है ...

+0

ऐसा करने से सावधान रहें। यह वास्तव में समस्या को मुखौटा करेगा क्योंकि यह केवल सिम्युलेटर में पूर्ण स्क्रीन पर स्पर्श घटनाओं को सक्षम बनाता है। वास्तविक डिवाइस पर, स्पर्श ईवेंट तब तक काम नहीं करेंगे जब तक कि आप अपने MainWindow.xib में लॉन्च विकल्प पर पूर्ण स्क्रीन सक्षम नहीं करते। एक और पूर्ण स्पष्टीकरण के लिए मेरा जवाब देखें। –

+0

यह सही ढंग से काम नहीं करता है, क्योंकि यह केवल दृश्य आकार को बदल देगा। 3.5 इंच स्क्रीन पर चीजें सही ढंग से आकार बदल नहीं सकती हैं। सबसे अच्छा विकल्प मुख्य विंडो के लिए "लॉन्च स्क्रीन पर लॉन्च" सक्षम करना है। – kamprath

32

आपको अपने मेनविंडो.एक्सिब को संपादित करने और "पूर्ण स्क्रीन लॉन्च" सक्षम करने की आवश्यकता है।

महत्वपूर्ण:: जब इंटरफ़ेस बिल्डर में अपनी खिड़की बनाने, यह सिफारिश की है कि आप गुण निरीक्षक में लॉन्च विकल्प पर पूर्ण स्क्रीन सक्षम है, इसकी विस्तृत व्याख्या के लिए, एप्पल के दस्तावेज़ देख सकेंगे। यदि यह विकल्प सक्षम नहीं है और आपकी विंडो लक्ष्य डिवाइस की स्क्रीन से छोटी है, तो अपने कुछ दृश्यों से प्राप्त ईवेंट नहीं होंगे। ऐसा इसलिए है क्योंकि विंडोज़ (सभी विचारों की तरह) उनके बाउंड आयताकार के बाहर स्पर्श ईवेंट नहीं प्राप्त करते हैं। क्योंकि विचार डिफ़ॉल्ट रूप से विंडो की सीमाओं पर नहीं फंस जाते हैं, विचार अभी भी दिखाई देते हैं लेकिन घटनाएं उन तक नहीं पहुंचती हैं। लॉन्च विकल्प पर पूर्ण स्क्रीन को सक्षम करने से यह सुनिश्चित होता है कि वर्तमान स्क्रीन के लिए विंडो उचित है।

Complete document from Apple

+1

यह मेरे लिए तय है। – jbierling

+0

बहुत बहुत धन्यवाद, मेरी समस्या तय! – Stiefel

+1

मेरे ऐप में टैबबार ने 4 पर एक्शन टच इवेंट नहीं किया। "यह तय किया गया ... धन्यवाद। – Ben

1

मैं मेरी समस्या को हल किया।

देखें 3.5 इंच और 4 इंच स्क्रीन के लिए .origin अलग हैं, इसलिए दोनों के लिए सामान्य कोड लिखते समय हमें CGRectmake(x,y,w,h) देने पर ध्यान रखना होगा;

सेट temp। diff दृश्य का diff पृष्ठभूमि रंग ताकि आप जांच सकें कि कोई दृश्य ओवरलैपिंग है या नहीं, 4.0 इंच में ईवेंट लाने के लिए।

4

इस समस्या में दो समाधान हैं:

आप MainWindow इन चरणों का पालन उपयोग कर रहे हैं:

एक।MainWindow.xib का चयन करें।

बी। विशेषताएँ इंस्पेक्टर में उपलब्ध विंडोज विकल्प से Full Screen at Launch का चयन करें।

अपने आवेदन तो MainWindow शामिल नहीं है तो सिर्फ जोड़ें:

self.view.frame = [UIScreen mainScreen].bounds 

viewDidLoad में।

संबंधित मुद्दे