में मैं एक tableHeaderView
viewDidLoad
के अंदर के रूप में searchBar
स्थापित करने के लिए कोशिश की हैअंतर viewDidLoad
func fetch() {
let fetchRequest:NSFetchRequest<Phone> = Phone.fetchRequest()
fetchRequest.sortDescriptors = [NSSortDescriptor.init(key: "header", ascending: true), NSSortDescriptor.init(key: "date", ascending: true)]
self.fetchedResultsController = NSFetchedResultsController.init(fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext, sectionNameKeyPath: "header", cacheName: nil)
self.fetchedResultsController.delegate = self
do {
try self.fetchedResultsController.performFetch()
self.tableView.reloadData()
} catch {}
}
लेकिन मुझे नहीं पता समझें कि वे काम नहीं कर रहे हैं। एक्सकोड दुर्घटनाग्रस्त हो जाता है और वास्तव में कुछ भी नहीं होता है। और फिर मैं viewDidLoad
विधि के अंदर कुछ बदलने की कोशिश की है:
override func viewDidLoad() {
super.viewDidLoad()
self.fetch()
self.tableView.reloadData()
// SearchController initializiation
self.searchController = UISearchController.init(searchResultsController: nil)
self.searchController.delegate = self
self.searchController.searchBar.delegate = self
self.searchController.searchBar.sizeToFit()
self.searchController.searchResultsUpdater = self
self.searchController.searchBar.barTintColor = UIColor.white
self.searchController.searchBar.keyboardAppearance = .default
self.searchController.searchBar.backgroundColor = UIColor.white
self.searchController.hidesNavigationBarDuringPresentation = true
self.searchController.obscuresBackgroundDuringPresentation = false
self.tableView.tableHeaderView = self.searchController.searchBar
self.definesPresentationContext = true
}
सफलता! ठीक से काम करता है। मुझे समझ में नहीं आता कि क्या अंतर है?
क्रैश होने पर त्रुटि संदेश क्या है? सटीक रेखा क्या है जो इसे दुर्घटनाग्रस्त करती है? कृपया स्टैक ट्रेस साझा करें। –
कुछ भी नहीं! कंसोल में केवल (lldb) – Mannopson
क्या कंसोल में कोई जानकारी है? आपकी समस्या को हल करने के लिए आपके प्रश्न में पर्याप्त जानकारी नहीं है। –