जब उपयोगकर्ता किसी तालिका दृश्य पर एक निश्चित सेल/पंक्ति दबाता है तो मैं एक सेगमेंट करने की कोशिश कर रहा हूं। मैंने प्रतिनिधि प्रोटोकॉल लागू किया है

extension myVC : UITableViewDelegate

यहाँ मेरा didSelectRow फ़ंक्शन है

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
   performSegue(withIdentifier: "searchToOtherUser", sender: self)
}

पिछले फ़ंक्शन में कुछ अतिरिक्त सामान भी किया गया है, लेकिन जब मैं फ़ंक्शन के भीतर ब्रेकपॉइंट डालता हूं, तो मैं देख सकता हूं कि ऐप इस फ़ंक्शन में कभी नहीं जाता है।

मैंने इस विषय पर पहले बताए गए कुछ उत्तरों को देखा है (कोई उपयोगकर्ता हावभाव का उपयोग नहीं किया जा रहा है, और तालिका दृश्य के साथ उपयोगकर्ता सहभागिता सक्षम है)।

क्या किसी के पास कोई विचार है कि मैं इसे कैसे ठीक कर सकता हूं?

बहुत बहुत धन्यवाद एंथनी

1
anthogd 23 मार्च 2020, 16:53

1 उत्तर

सबसे बढ़िया उत्तर

यदि सामग्री लोड हो रही है और चयन सक्षम है, तो जांच की जाने वाली चीजें हैं:

  • 1) तेजी से प्रोग्राम के रूप में प्रतिनिधि सेट करें
  • 2) (वैकल्पिक) टेबलव्यू delegate को File's Owner पर सेट करें यदि आपने UITableViewController बनाने के बजाय Storyboard में अपने UIViewController में टेबलव्यू जोड़ा है (जो करता है स्वचालित रूप से आपके लिए)।

चेक 1 - प्रतिनिधि को प्रोग्रामेटिक रूप से सेट करें

override func viewDidLoad() {
    super.viewDidLoad()

    tableView.delegate = self
    ...
}

चेक 2 (केवल स्टोरीबोर्ड में UIViewController में जोड़े गए TableView के लिए)

स्टोरीबोर्ड में Interface Builder के माध्यम से आपको टेबलव्यू के delegate को File's Owner से भी लिंक करना चाहिए:

**चेक 2 - चरण ए) **

यह हो सकता है कि File's Owner को बाएं पट्टी पर स्पष्ट रूप से बताए जाने के बजाय, यह हो सकता है कि आपको इसे इस तरह से करना पड़े:

चेक 2 - वैकल्पिक चरण A)

और फिर इस तरह delegate चुनें:

चेक 2 - चरण बी)

0
denis_lor 23 मार्च 2020, 14:31