मेरे पास अपने ऐप पर समान चेतावनियां थीं। वास्तव में 2 समस्याएं थीं। मैंने विधि हस्ताक्षर में अंडरस्कोर जोड़कर या विधि को सही विस्तार पर ले जाकर सभी चेतावनियों को ठीक किया है, जो प्रोटोकॉल लागू करता है जहां से विधि आती है।
मुझे लगता है कि आपकी समस्या दोनों का संयोजन हो सकती है।
और अधिक विस्तार में:
1) आप से पहले "अंडरस्कोर" चरित्र जोड़ना भूल सकता है "tableView: ...", स्विफ्ट 2.3 उस में यह स्विफ्ट 3 (में एक भिन्न तरीके से करता है जो कोई फर्क नहीं पड़ता)। यह करने के लिए
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?
:: तो क्या आप इसे बदलना चाहिए
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?
2) विधि tableView(_:viewForHeaderInSection:)
UITableViewDelegate
प्रोटोकॉल से है, लेकिन संकलक की तरह इस बारे में पता नहीं है कि यह लग रहा है विधि-यह केवल जानता है UITableViewDataSource
से विधियों में से और आपको उनमें से एक (tableView(_:titleForHeaderInSection:)
) की सलाह देने का प्रयास करता है। तो आप या तो UITableViewDelegate
को लागू नहीं करते हैं या आप करते हैं, लेकिन किसी अन्य एक्सटेंशन में शायद?
स्रोत
2016-09-28 08:35:07
इस समस्या में भी चल रहा है। फिक्स-यह भी सुझाव दिया गया कि मैं इसे चेतावनी चुप करने के लिए निजी चिह्नित करता हूं। – Mike
आप ऐसा नहीं कर सकते हैं, अन्यथा, इस विधि को – Jacky