iphone - Custom UIButton in UITableViewCell - Remove does not work -


मुझे अपने तालिका दृश्य सीएल में कस्टम यूआई बटन मिला है:

  - (UITableViewCell *) tableView : (UITableView *) टेबलव्यू सेलफोररूअटइंडएपपाथ: (एनएसआईएनएक्सएपथ *) इंडेक्सपेथ {स्थिर NSString * ident = @ "indet"; सेल = [टेबलव्यू डेक्यूयूयूआरयूबलकेलवाइटआईडेंटिफायर: पहचान]; अगर (सेल == नीला) {सेल = [[[यूआईटीबल वीजेसीएल एलोक] इनटविथफ्रेम: सीजीआरएक्साइरो रीयूजआईडेंटिफायर: आईसीएडी] ऑटोरेक्वेस]; } बटन = [UIButton बटन के साथप्रकार: UIButtonTypeCustom]; [बटन सेटफ़्रेम: सीजीआरएक्टमेक (230.0 एफ, 7.5 एफ, 43.0 एफ, 43.0 एफ)]; [बटन सेट इमेज: [UIImage imageNamed: @ "check_bak.png"] forState: UIControlStateNormal]; [बटन addTarget: स्व क्रिया: @ सिलेक्टर (हटाएं एंटर) कंट्रोल ईवेंट्स के लिए: UIControlEventTouchUpInside]; Button.tag = [सूचकांक पंक्ति]; [सेल ऐड एस्यूब्यूव्यू: बटन]; Cell.textLabel.text = [myArray ऑब्जेक्टअटइंडेक्स: इंडेक्सपाथ.रो]; Cell.textLabel.textColor = [UIColor blackColor]; Cell.textLabel.font = [UIFont fontWithName: @ "हेलविलेिका" आकार: 20.0]; Cell.textLabel.shadowColor = [UIColor whiteColor]; Cell.textLabel.shadowOffset = CGSizeMake (0,1); रिटर्न सेल; }   

मैंने निकालने के लिए एंटरप्राइज़ फ़ंक्शन के लिए मेरे। में इंडेक्सपैथ घोषित किया है।

निकालेंईंट्री:

  [myArray removeObjectAtIndex: indexPath। पंक्ति]; [MyTable पुनः लोडडेटा];   

myArray एक NSMutableArray है।

इस तरह से ठीक से काम नहीं करता है।

हर बार मैं indexPath.row पर एक प्रविष्टि निकाल देता हूं यह एक प्रवेश। लेकिन गलत यह हमेशा एक प्रविष्टि ऊपर है जो निकाला जा रहा है यहां तक ​​कि अगर मैं इंडेपैथ। पेज + 1 / -1 करता हूं।

क्या कोई दूसरा तरीका है? बटन सेल में रहना चाहिए।

मुझे आशा है कि यह समझ में आता है, खेद है, मैं जर्मन हूं। :)

आपकी तालिका दृश्य में कितने अनुभाग हैं? आपके RemoteEntry विधि में indexPath.row के मान कन्सोल को मुद्रित करना एक अच्छा विचार हो सकता है। यदि आप पहली पंक्ति पर क्लिक करते हैं, तो क्या 0 प्रिंट हो रहा है? पांचवीं पंक्ति, 4 प्रिंट हो रही है, आदि।

संपादित करें: अपने कोड को देखते हुए, आप सूचकांक को टैग के टैग के रूप में संग्रहित कर रहे हैं। इस मामले में, अपने को हटाने की विधि को इस तरह से देखने के लिए बदलें (आप जो भी आप वापस करना चाहते हैं, उसे वापस लौटकर आप बदल सकते हैं):

  - (शून्य) निकालनाईंट्री: (आईडी) प्रेषक {  

और जब आप अपना लक्ष्य जोड़ रहे हैं, तो 'हटाएंइंटर' के बाद एक बृहदान्त्र जोड़ें: [बटन addTarget: self action: @selectorControlEvents के लिए (हटाएं प्रविष्टि :): UIControlEventTouchUpInside];

अब, अंदर की जगह हटाएं, आप ऐसा कर सकते हैं:

  UIButton * बटन = (UIButton *) प्रेषक; [MyArray को हटायें ऑब्जेक्टआटइंडएक्स: बटनटैग]; [MyTable पुनः लोडडेटा];    

Comments