मेरे पास नीचे जैसा स्टोरीबोर्ड है।

Storyboard

जब मैंने "पुश व्यू कंट्रोलर 2" टैप किया, तो एक अजीब एनीमेशन दिखाई दिया।

Strange animation on navigation bar

मैंने नेविगेशनकंट्रोलर.व्यू.बैकग्राउंडकलर या टैबबारकंट्रोलर.व्यू.बैकग्राउंड को सफेद पर सेट किया है। लेकिन यह काम नहीं कर रहा है। मैं नेविगेशनबार को सेट नहीं करना चाहता। पारभासी को नहीं।

मुझे इससे कैसे छुटकारा मिल सकता है?

2
oolionoo 15 अप्रैल 2018, 03:34

3 जवाब

सबसे बढ़िया उत्तर

जब आप TabView application में नेविगेशन नियंत्रक का उपयोग कर रहे हों। असामान्य व्यवहार से बचने के लिए अपने प्रत्येक व्यू कंट्रोलर में अलग से एक नेविगेशन कंट्रोलर को एम्बेड करना एक आम बात है और यह आपको अलग-अलग उदाहरण में अपने NavigationController को नियंत्रित करने का एक बेहतर तरीका भी देता है। स्टोरीबोर्ड लेआउट के बाद अपने अजीब एनीमेशन को ठीक करें।

enter image description here

आउटपुट:

enter image description here

PS: @skJosh टिप्पणी द्वारा भी इसी विचार का उल्लेख किया गया है।

अपडेट करें: अपने TabBar को छिपाने और दिखाने के लिए नीचे दिए गए कोड को अपने DetailViewController में पेस्ट करें।

override func viewWillAppear(_ animated: Bool) {
    tabBarController?.tabBar.isHidden = true
}

override func viewWillDisappear(_ animated: Bool) {
    tabBarController?.tabBar.isHidden = false
}
2
Joe 19 अप्रैल 2018, 14:23

आपके पास अपना व्यू कंट्रोलर नहीं है (नेविगेशन के भीतर धकेल दिया गया) navigationBar के तहत बढ़ाया गया है (इसीलिए आपको धुंधला लाल व्यू कंट्रोलर दिखाई देता है - जो कि पिछला वाला है - बार के नीचे).

अपना edgesForExtendedLayout और extendedLayoutIncludesOpaqueBars सेट करें। साथ ही इस मामले में navigationBar.isTranslucent true होना चाहिए।

या आप केवल navigationBar की पारभासी को बंद कर सकते हैं और इसके रंग को अपनी इच्छानुसार सेट कर सकते हैं।

-1
Jakub Truhlář 15 अप्रैल 2018, 03:54

निम्नलिखित सेट करें Animates अनचेक करने के लिए चेक करें

enter image description here

-1
Muhammad Nadeem 15 अप्रैल 2018, 11:04