अगस्त की जवाब मेरे लिए काफी अच्छा था, लेकिन मैं समझ कैसे इसे और भी बेहतर बनाने के लिए:
जांच की जा रही है, तो तालिका संपादन मोड पर था तय करने के लिए करता है, तो बटन प्रदर्शन करना चाहिए अपनी कार्रवाई यह कर देगा व्यवहार करें, लेकिन उपयोगकर्ता अनुभव में अभी भी कोई समस्या होगी:
यदि उपयोगकर्ता संपादन मोड से बाहर निकलना चाहता है, तो उसे बटन सहित, प्राप्त करने के लिए सेल में कहीं भी टैप करने में सक्षम होना चाहिए। हालांकि, UIButton
की कार्रवाई को अभी भी ऐप द्वारा विश्लेषण किया गया है, और बटन टैप करने से संपादन मोड से बाहर नहीं निकल जाएगा।
// View with tag = 1 is the UIButton in question
- (void)tableView:(UITableView *)tableView willBeginEditingRowAtIndexPath:(NSIndexPath *)indexPath {
[(UIButton *)[[tableView cellForRowAtIndexPath:indexPath] viewWithTag:1] setUserInteractionEnabled:NO];
}
- (void)tableView:(UITableView *)tableView didEndEditingRowAtIndexPath:(NSIndexPath *)indexPath {
[(UIButton *)[[tableView cellForRowAtIndexPath:indexPath] viewWithTag:1] setUserInteractionEnabled:YES];
}
इस तरह, संपादन मोड में प्रवेश करने के लिए बटन की कार्रवाई ट्रिगर नहीं करेगा बटन खींच:
समाधान मैंने पाया है, जबकि संपादन मोड में प्रवेश, और यह फिर पुनः सक्षम बटन के उपयोगकर्ता संपर्क निष्क्रिय करने के लिए इसके पूर्ण होने पर था , और संपादन मोड से बाहर निकलने के लिए इसे टैप करने से वास्तव में संपादन मोड से बाहर निकल जाएगा।
खैर सोचा! साथ ही, 'UITableView' पहले से ही एक संपत्ति ध्वज' संपादन' (गेटर 'isEditing') है, इसलिए एक बनाने की कोई आवश्यकता नहीं है। – Guilherme
वह बहुत मददगार था! –