XIB फाइल खोलने के बाद Xcode 6.3 फ्रीज / हैंग हो जाता है


82

Xcode 6.3 (रिलीज़ संस्करण) में अपग्रेड करने के बाद, Xcode अब हर बार फ्रीज करता है जब मैं एक XIB / स्टोरीबोर्ड फ़ाइल खोलता हूं जिसमें एक IB_DESIGNABLEदृश्य शामिल होता हैजो एक कस्टम फ़ॉन्ट का उपयोग करता हैकिसी भी प्रोजेक्ट के लिए और एक कस्टम फ़ॉन्ट भी शामिल है (जरूरी नहीं कि उस XIB / स्टोरीबोर्ड में उस फ़ॉन्ट का संदर्भ हो)। फ्रीज .xib फ़ाइल को खोलने और फिर किसी अन्य फ़ाइल पर स्विच करने का प्रयास करने के बाद होता है। Xcode हैंग हो जाता है और इसे छोड़ने के लिए बाध्य होना चाहिए।

मैंने Apple के साथ एक बग रिपोर्ट खोली है। (बग 20483867)।

अभी, मेरे पास दो काम हैं।

  1. डाउनलोड करें और Apple से Xcode 6.2 का उपयोग करें।
  2. कस्टम दृश्य हेडर फ़ाइलों से IB_DESIGNABLE टैग निकालें।

यह संभवतः Apple बग है, लेकिन क्या किसी के पास बेहतर समाधान या समाधान है?


7
यहाँ एक ही बात, जब मैं इंटरफ़ेस बिल्डर से किसी अन्य फ़ाइल पर स्विच करने का प्रयास करता हूं तो पूरी तरह से Xcode जम जाता है। निकाला जा रहा है सभी IB_DESIGNABLE सुधारों को इस मुद्दे जिम्मेदार बताते हैं। अब ६.२
कोहरे पर

1
मुझे भी। फ़ोल्डर को हटाना ~ / Library / Saved Application State / com.apple.dt.Xcode.savedState मेरी मदद करता है, लेकिन जब मैंने फिर से स्टोरीबोर्ड खोलने की कोशिश की तो मुझे वही मुद्दा मिला।
tikhop

आप यह देखने के लिए "स्वचालित रूप से ताज़ा दृश्य" अनचेक करने की कोशिश कर सकते हैं कि क्या यह दुर्घटना को रोकता है? यदि हां, तो आप देख सकते हैं कि क्या आप लॉक किए बिना "सभी दृश्यों को ताज़ा करें" कर सकते हैं।
nhgrif

@nhgrif वह सेटिंग कहां है?
1

2
Apple ने sysdiagnose से आउटपुट का अनुरोध किया है। जैसे ही यह आगे बढ़ेगा मैं अपडेट प्रदान करता रहूंगा।
picciano

जवाबों:


26

Xcode 6.3.1 IB_DESIGNABLEस्टोरीबोर्ड में कस्टम फोंट और विचारों के साथ समस्या को ठीक करता है । मैक ऐप स्टोर के माध्यम से अपडेट करें, और आपको अच्छा होना चाहिए।


28

मैंने पहले ही अधिक सटीक वर्णन के लिए एक संपादन का सुझाव दिया है

यह केवल तब होता है जब आपकी परियोजना में एक कस्टम फ़ॉन्ट होता है। यह किसी भी स्टोरीबोर्ड / XIB पर जाकर फ्रीज करेगा, जिसमें एक IBDesignable कस्टम दृश्य होता है, यहां तक ​​कि आपके स्टोरीबोर्ड / XIB में उस फ़ॉन्ट का संदर्भ भी नहीं।

मेरा वर्कअराउंड उपयोग करने के लिए है Xcode का एक पुराना संस्करण भी स्थापित है (Xcode 6.3 बीटा या Xcode 6.2) और इसका उपयोग करें कि अपनी इंटरफ़ेस बिल्डर फ़ाइलों को अपडेट करें, और इसे 6.3 में कभी न खोलें। उन स्टोरीबोर्ड / XIB को प्रोजेक्ट ट्री में option+ shift+ clickफाइल के साथ Xcode में एक नई विंडो में खोलें ।

जब भी आप फ्रीज का सामना करते हैं, मैं इस कमांड का उपयोग केवल उस प्रोजेक्ट के लिए सहेजे गए राज्य को साफ करने के लिए करता हूं।

rm -rf YourProject.xcodeproj/project.xcworkspace/xcuserdata


3
समाशोधन के लिए कमांड xcuserdataमददगार है। मेरे लिये कार्य करता है।
येवैन दुबिनिन

5
यदि आप कोकोपोड्स का उपयोग कर रहे हैं, तो आपको xxuserdata को मुख्य कार्यक्षेत्र फ़ाइल से .xcodeproj rm -rf YourProject.xcworkspace / xcuserdata
Nur Iman Izam

अरे मैं हाल ही में इस मुद्दे पर चल रहा हूं इसलिए मैंने इस मुद्दे से निपटने में मदद करने के लिए एक पटकथा लिखी है। यह CocoaPods का उपयोग कर एक परियोजना के लिए बहुत अच्छा काम करता है, लेकिन मैंने इसे अपने पर्यावरण के बाहर परीक्षण नहीं किया है। इसमें इस उत्तर में पोस्ट किया गया समाधान शामिल है, लेकिन दोनों एकल परियोजनाओं और कार्यक्षेत्रों को संभालना चाहिए gist.github.com/Ziewvater/3190e20b1ace2ab3c3b6 । मुझे बताएं कि क्या कोई सुधार है जो मैं इस पर कर सकता हूं
Ziewvater

15

Apple से प्रतिक्रिया: Apple पर डेवलपर फ़ोरम से लिंक करें

आपकी रिपोर्ट के लिए आप सभी का धन्यवाद। हम इसे अपने अंत में ट्रैक कर रहे हैं और इसे हल करने के लिए कड़ी मेहनत कर रहे हैं। दुर्भाग्यवश हमारे पास एक बहुत अच्छा समाधान नहीं है, लेकिन यहां आपको जाने के दो विकल्प हैं:

यदि Xcode लॉन्च पर लटका हुआ है क्योंकि एक कस्टम फॉन्ट / IBDesignable का उपयोग करते हुए एक स्टोरीबोर्ड / XIB पहले खुला था: जिस प्रोजेक्ट को आप खोल रहे हैं, उसके xcodeproj के अंदर "UserInterfaceState.xcuserstate" फ़ाइल को हटा दें, यह इस तरह से होगा: My App .xcodeproj / project.xcworkspace / xcuserdata / yourusername.xcuserdatad / UserInterfaceState.xcuserstate

यदि आपको स्टोरीबोर्ड / XIB फ़ाइल को संपादित करने की आवश्यकता है, जिसमें Xcode 6.3 के साथ कस्टम फ़ॉन्ट है:

  1. बैकअप के रूप में अपने स्टोरीबोर्ड / XIB फ़ाइल की प्रतिलिपि बनाएँ
  2. टेक्स्ट एडिटर में स्टोरीबोर्ड / XIB फ़ाइल खोलें
  3. उदाहरण के लिए, अपने कस्टम फ़ॉन्ट को संदर्भित करने वाले "fontDescription" नाम के XML टैग को निकालें:। इस टैग को हटाने से फ़ॉन्ट मानक प्रणाली फ़ॉन्ट पर वापस आ जाएगा।
  4. कस्टम फॉन्ट का उपयोग करके ऑब्जेक्ट्स के लिए आउटलेट बनाएं और रनटाइम में उन ऑब्जेक्ट्स के फॉन्ट को अपने कस्टम फॉन्ट में सेट करें, उदाहरण के लिए viewDidLoad या awakeFromNib के ओवरराइड में अपने व्यू कंट्रोलर पर

महत्वपूर्ण नोट: हम कभी भी हाथ से स्टोरीबोर्ड / XIB फाइल एडिट करने की सलाह नहीं देते हैं। हालाँकि, हम पहचानते हैं कि यह मुद्दा आप में से कई को अपने दस्तावेज़ों को संपादित करने से रोक रहा है और कैविएट के साथ वर्कअराउंड प्रदान करना चाहता है कि किसी भी हाथ के संपादन से आपके दस्तावेज़ में भ्रष्टाचार हो सकता है।


9
यह सभी प्रकार का उल्लसित है। "अगर आपको वास्तव में स्टोरीबोर्ड / XIB फाइल को संपादित करने की आवश्यकता है"
user1021430

13

मेरे लिए भी यही समस्या है। IB_DESIGNABLE को हटाने से समस्या ठीक हो जाती है .. 6.2 पर वापस जाना मेरे लिए काम नहीं करता क्योंकि मैं iOS 8.3 के साथ डिवाइस पर ऐप्स का परीक्षण कर रहा हूं - Xcode 6.2 iOS 8.3 :( के साथ डिवाइस पर ऐप नहीं चला सकता


एक ही मुद्दा यहाँ भी। मुझे 8.3 की आवश्यकता है और मैं कुछ नई स्विफ्ट सुविधाओं का भी उपयोग कर रहा हूं।
क्रिश्चियन ए। स्ट्रोमैन

एक विकल्प यदि आपको अभी भी काम करने की आवश्यकता है, और एक के आसपास एक दस्तक होने की जरूरत है, तो एक Xcode 6.3 बैक में से एक पर वापस जाना है। मैं पुष्टि कर सकता हूँ कि 6D532l का निर्माण (बीटा 3 मुझे लगता है) लटका नहीं है।
Samscam

3

एक अन्य हल यह है कि फ़ाइल एक्सटेंशन को आपकी सभी फ़ॉन्ट फ़ाइलों में बदला जाए और बदले हुए फ़ाइल नामों को Info.plist से लोड किया जाए। इस तरह से आप IBDesignables रख सकते हैं और फिर भी अपने कस्टम फोंट का उपयोग कर सकते हैं, लेकिन इंटरफ़ेस टेंडर में फॉन्ट पिकर में उन्हें देखने में सक्षम नहीं होंगे।

इंटरफ़ेस बिल्डर से स्पष्ट रूप से सेट किए गए सभी कस्टम फ़ॉन्ट काम करना जारी रखेंगे, लेकिन उन्हें बदलने या किसी अन्य कस्टम फ़ॉन्ट को सेट करने के लिए, आपको इसे कोड से या स्टोरीबोर्ड या नीब फ़ाइलों को पाठ संपादक से संशोधित करने के लिए करना होगा। फ़ॉन्ट नाम सेट करने के लिए।


इसने मेरे लिए काम किया। मैंने पाया कि सहेजे गए राज्य / xususerdata को हटाने के बाद भी अगली बार स्टोरीबोर्ड खुलने के बाद यह फिर से टूट जाएगा। फोंट के लिए एक्सटेंशन को छोड़ना और Info.plist को अपडेट करना बेहतर काम करता है
जॉन मार्टिन

यह मेरे लिए भी काम किया, @picciano द्वारा पोस्ट किए गए चरणों को करने के बाद
अल्बर्ट बोरी

2

मेरे पास कोई जवाब नहीं है, लेकिन यह पता चला है कि बस बलपूर्वक छोड़ने और पुनः आरंभ करने से एक्सकोड को ठीक उसी स्थिति में फिर से लॉन्च किया जाएगा। केवल Xcode को पुनरारंभ करने में सक्षम होने के लिए, फ़ोल्डर को हटा दें ~/Library/Saved Application State/com.apple.dt.Xcode.savedState


1
यहां एक अन्य विकल्प खोजक (.xcodeproj या .xcworkspace) में आपकी प्रोजेक्ट फ़ाइल का पता लगा रहा है -> पैकेज सामग्री दिखाएं -> और वहां "xcuserdata" फ़ोल्डर निकालें। यह आपके Xcode UI स्थिति को पुनर्स्थापित करेगा।
मैक्सकोनोवलोव

उपयोगकर्ता-डेटा को नष्ट करने से मुझे मेरे Xcode 6.3 मुद्दे
Sascha Held

1

यह बग 6.4 Xcode बीटा में तय किया गया है जो आज सामने आया है। देव केंद्र पर जाएं और इसे डाउनलोड करने के लिए लॉग इन करें।


मैं Xcode 6.3 (जैसे 6.3.1) की नई रिलीज़ की प्रतीक्षा करना पसंद करूंगा, क्योंकि हम बीटा रिलीज़ को विकसित करने का जोखिम नहीं उठा सकते, क्योंकि वे तय किए गए लोगों की तुलना में अधिक मुद्दे ला सकते हैं।
KoCMoHaBTa

3
मैंने 6.4 डाउनलोड किया है लेकिन यह अभी भी क्रैश है।
जिबला

1

Xcode 8.1 - यदि आपके पास नेविगेशन के साथ एक दृश्य है (मेरे मामले में यह शीर्ष बार अपारदर्शी नेविगेशन बार था), तो संपत्ति को "टॉप बार" में से कोई भी सेट करने का प्रयास करें।


मुझे लगता है कि आपने इसे गलत प्रश्न में जोड़ दिया होगा।
16

@picciano nope, यह वास्तव में सही है। यह केवल एक चीज थी जो मेरे लिए काम करती थी। कृपया अधिक जानकारी के लिए मेरा जवाब देखें
लुइसियन

0

वर्कअराउंड के रूप में, मैंने अभी अपने मुट्ठी भर कस्टम घटकों में सभी @IBDesignable मार्कअप को टिप्पणी की है जो इसका उपयोग करते हैं। जब मैंने ऐसा किया, हाँ, मैं इंटरफ़ेस बिल्डर में सेटिंग्स को ट्विक करने की क्षमता खो देता हूं, लेकिन इसने मुझे कम से कम .xib फ़ाइलों को एक्स / कोड क्रैश होने की अनुमति दी।

जब Apple Apple w / fix पर आता है तो मैं उन @IBDesignable लाइनों को अन-कमेंट करूँगा।


0

@O। कुर्ननकोव के जवाब ने मेरे लिए काम किया। इसका IB_Designable और न ही कस्टम फोंट, Cocapapods, आदि से कोई लेना-देना नहीं था।

किसी कारण से "अपारदर्शी नेविगेशन बार" nibफ़ाइल का कारण बनता है (यह स्थिति को प्रभावित नहीं करता है storyboard) लगातार yस्थिति बदलने के लिए ; यह देखा जा सकता है Size Inspectorकि yस्थिति 0 और 64 के बीच टिमटिमाती है। यह मेरे लिए Xcode 8.2 (8C38) के साथ हो रहा है।

यहाँ छवि विवरण दर्ज करें

मेरा अनुमान यहाँ यह है कि इससे Xcode लगातार लेआउट को अपडेट करता रहता है जिससे संसाधनों की निकासी होती है और इससे हैंग / फ्रीज होता है।

यहाँ छवि विवरण दर्ज करें

समाधान "पारभासी" विकल्पों में से किसी का भी उपयोग करना है, Inferred, या कोई भी नहीं।

उम्मीद है की यह मदद करेगा!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.