2009-06-01 5 views
6

मैं स्वाइप मेनू जैसे ट्वीट को कैसे कार्यान्वित कर सकता हूं?ट्वीटी स्वाइप मेनू की तरह

मुझे कस्टमसेल के साथ एक टेबलव्यू कंट्रोलर विकसित करने के साथ किया गया है। कस्टमसेल लागू करता है touchesbegan और स्पर्श करता है। यह अभिभावक tableviewcontroller के चयनकर्ता के माध्यम से स्वाइप जेश्चर की भी रिपोर्ट करता है।

अब मुझे "स्वाइप किए गए" सेल को छिपाने के बारे में कैसे जाना चाहिए और इसे "स्वाइप मेनू दृश्य" के साथ बदलना चाहिए और मुझे स्वाइपव्यू पर मौजूद बटनों से कार्रवाइयों को कैसे प्राप्त करना चाहिए?

+0

https://github.com/thermogl/TISwipeableTableView पर एक नजर डालें यह एक सा चमकाने की जरूरत है, लेकिन यह काम करता है और एक शुरुआत हो सकता है। – myell0w

+0

सावधान रहें कि TISwipeableTableView "सामान्य" UITableView - घटनाओं को गड़बड़ कर देता है ... इसे कक्षा में अनुकरण करता है। तो आपको सभी प्रकार के अजीब गैर-डिफ़ॉल्ट व्यवहार मिलते हैं ... मैं इसे लागू करने की कोशिश करूंगा, लेकिन यह एक सौदा ब्रेकर था। (इसे फिर से लिखना बहुत मुश्किल नहीं था) – steipete

उत्तर

12

प्रत्येक तालिका दृश्य कक्ष में एक सामग्री है जिसमें सेल के पूरे क्षेत्र को शामिल किया गया है। कंटेंटव्यू में एक अपारदर्शी पृष्ठभूमि के साथ एक कंटेनर व्यू के रूप में अपना स्वाइप-मेन्यू व्यू जोड़ें ताकि यह बाकी सब कुछ के ऊपर हो। इसे स्थिति दें ताकि यह बाएं (x = 0) फ्लश हो, चौड़ाई को 0 पर सेट करें, और इसे छुपाएं। उस सिंगल कंटेनर में कोई अन्य सबव्यू (बटन, इत्यादि) शामिल हो सकता है और आप सेल इवेंट को बटन इवेंट्स के लक्ष्य के रूप में सेट कर सकते हैं (फिर इसे सेल इंडेक्स सूचना के साथ मूल तालिका दृश्य में बबल करें)।

जब समय दिखाने के लिए आता है, तो इसे छिपाने के लिए सेट करें, फिर कंटेनर चौड़ाई 0 से पूर्ण तालिका चौड़ाई में जाने के लिए UIView एनीमेशन का उपयोग करें। अवधि को बहुत कम सेट करें (यानी 0.2 सेकंड) तो यह ज़िप्पी है। जब आप एनीमेशन चलाते हैं, तो स्वाइप-मेनू सेल सामग्री दृश्य में अन्य सभी चीज़ों पर दिखाई देता है। इसे गायब करने के लिए बस इसे उलट दें (UIView BeginAnimation ब्लॉक में चौड़ाई को 0 पर सेट करें)। आप अंत में एनीमेशन पूर्ण करने वाले हैंडलर को भी सेट करना चाहते हैं और वहां कुछ हाउसकीपिंग करना चाहते हैं (कंटेनर व्यू को छुपाएं, रिलीज मेमोरी इत्यादि सेट करें)।

+0

धन्यवाद ... हैवेन्ट ने अभी तक कोशिश की ... लेकिन बहुत आशाजनक लग रहा है ... – Mugunth