मैं वर्तमान में आईओएस प्रोग्रामिंग और स्विफ्ट सीखने के लिए एक ऐप पर काम कर रहा हूं। मेरे पास एक दृश्य है जिसमें दो मुख्य सबव्यूव, एमकेमैप व्यू और यूआईटीबल व्यू शामिल हैं। जब MapView में एक निश्चित एनोटेशन का चयन किया जाता है, तो मुझे तालिका दृश्य में कुछ कक्ष छिपाने की इच्छा होती है। अगर एनोटेशन को अचयनित किया जाता है तो कोशिकाओं को फिर से दिखाना चाहिए। वर्तमान में मैं कोशिकाओं को 0 से छिपाने और tableView.beginUpdates()
tableView.endUpdates()
पर कॉल करने के लिए ऊंचाई निर्धारित करके ऐसा करता हूं, हालांकि यह मेरे कस्टम कोशिकाओं के अंदर सभी प्रकार की ऑटोलायआउट बाधाओं को तोड़ने का कारण बनता है। मैंने ऊंचाई को 0 पर सेट करने से पहले सेल पर छिपी हुई संपत्ति को सत्य पर सेट करने का भी प्रयास किया है, लेकिन ऑटोलाउट बाधाएं अभी भी टूटी जा रही हैं।ऑटोटायआउट बाधाओं का उल्लंघन नहीं करते समय UITableViewCells को छिपाने के लिए कैसे करें
ऐसा करने का उचित तरीका क्या होगा?
अग्रिम धन्यवाद।
टेबल दृश्य डेटा स्रोत के रूप में दो अलग-अलग सरणी रखना एक अच्छा तरीका है। पहले आपके सभी डेटा प्रदर्शित किए जा सकते हैं। दूसरा, तालिका दृश्य का वास्तव में सरणी डेटा स्रोत है। एनोटेशन पर क्लिक करते समय, आप पहली सरणी से डेटा ले कर दूसरी सरणी (उस डेटा को डालने या हटाने) को नवीनीकृत कर सकते हैं। तालिका दृश्य केवल अंत में पुनः लोड किया जाएगा। –
इस तरह मैंने पहली बार अपना व्यू कंट्रोलर लागू किया था, लेकिन मुझे पता नहीं चला कि दूसरी सरणी अपडेट होने पर मैं कोशिकाओं के गायब होने को कैसे एनिमेट कर सकता हूं। मैं सुझावों के लिए खुला हूं कि मैं उस परिवर्तन को कैसे एनिमेट कर सकता हूं। –