मैं UIView से सभी सबव्यूव को हटाने का प्रयास कर रहा हूं। मैंने निम्नलिखित प्रभावों का प्रयास नहीं किया:मोनोटच: दृश्य से सभी सबव्यू हटाएं
for (int i = 0; i < this.Subviews.Length; i++)
{
this.Subviews[i].RemoveFromSuperview();
}
मैं UIView से सभी सबव्यूव को हटाने का प्रयास कर रहा हूं। मैंने निम्नलिखित प्रभावों का प्रयास नहीं किया:मोनोटच: दृश्य से सभी सबव्यू हटाएं
for (int i = 0; i < this.Subviews.Length; i++)
{
this.Subviews[i].RemoveFromSuperview();
}
बस इसका परीक्षण किया और यह मेरे लिए काम किया। (हालांकि अपने कोड भी मेरे लिए अच्छा लग रहा है ...)
foreach (UIView view in tableView.Subviews) {
view.RemoveFromSuperview();
}
यह आपके लिए काम नहीं करता है, वहाँ कुछ है कि निकाले जाने से रोकता है subviews हो सकता है।
बाद में दृश्य को रीफ्रेश करने या विशेष रूप से मुख्य थ्रेड पर निकालें कॉल का आह्वान करने का प्रयास करें।
आपके नमूने के साथ समस्या यह है कि आपने लूप कैसे बनाया।
जब आप 0 पर दृश्य को हटाते हैं, तो सबव्यूज़ सरणी एक तत्व छोटा होता है, और तत्व 1 अगले पुनरावृत्ति पर तत्व 0 बन जाता है। दूसरी ओर आपका मैं चर बढ़ रही रखता है, ताकि आप 1.
लंघन अंत आप पूरी तरह पाश के लिए एक उपयोग करने की आवश्यकता है, तो यह
for (int i = this.Subviews.Length - 1 ; i > 0 i--)
{
this.Subviews[i].RemoveFromSuperview();
}
कुछ 0-आधारित है कि आस-पास काम कर सकता है क्या करेंगे, सही? 'की तरह (यह। सबव्यू। लम्बाई> 0) {यह। सबव्यूज [0]। RemoveFromSuperview(); } ' – riha