2015-07-16 21 views
14

में मेरे पास एक SearchController की खोज बार प्रोग्रामिंग रूप से UITableView की तालिका में डाली गई हैहेडर व्यू। जब मैं खोज बार देखने या तालिका को रीफ्रेश करने के लिए खींचता हूं, तो मुझे यह अजीब गहरा भूरा मिलता है जिसे आप निम्न छवि में रीफ्रेशर गतिविधि संकेतक और खोज बार के बीच देख सकते हैं (यह पृष्ठभूमि रंग तब भी जारी रहता है जब मैं रीफ्रेशर को हटा देता हूं देखें):यूआईटीएबल कंट्रोलर के लिए पृष्ठभूमि रंग UITableView

enter image description here

tableView.tableHeaderView = searchController.searchBar 

मैं हर तरह से मैं के बारे में सोच सकते हैं में इस पृष्ठभूमि रंग बदलने की कोशिश की है:

tableView.backgroundColor = UIColor.redColor() 
tableView.tableHeaderView!.backgroundColor = UIColor.redColor() 
searchController.searchBar.backgroundColor = UIColor.redColor() 
view.backgroundColor = UIColor.redColor() 

कुछ भी नहीं काम करता है। यह गहरा भूरा मेरे प्रोजेक्ट में उपयोग किए जाने वाले कस्टम रंगों में से एक नहीं है, इसलिए मुझे पता है कि मैंने इसे मैन्युअल रूप से सेट नहीं किया है। जैसे ही मैं खोज करता हूं नियंत्रक सब कुछ पहले की तरह काम करता है: उस अंधेरे भूरे रंग को हर जगह देखा हल्का भूरा बदल दिया जाता है।

[searchController.searchBar setBarTintColor:[UIColor blackColor]]; 
[searchController.searchBar setTintColor:[UIColor whiteColor]]; 

आशा इस मदद करता है:

+0

searchController.view.backgroundColor = UIColor.redcolor()? – streem

+0

मैं वास्तव में इसे लाल नहीं चाहता, सिर्फ यह जांचता हूं कि क्या काम करता है। उनमें से कोई भी अंधेरे ग्रे पृष्ठभूमि रंग में परिवर्तन नहीं करता है। –

+0

इसे आज़माएं self.tableView.contentOffset = CGPointMake (0, self.searchDisplayController.searchBar.frame.size.height) – Karlos

उत्तर

30

एक नया बेकार देखने के लिए UITableView के backgroundView सेट के रूप में एक खाली दृश्य सेट:

self.tableView.backgroundView = [UIView new]; 

विसंगत लगता है, लेकिन एक आकर्षण :)

9

इस प्रयास करें।

+0

यह वही है जो मैं ढूंढ रहा था। – dustinrwh

3

बस UITableView के backgroundview

[self.tableView setBackgroundView:[[UIView alloc] initWithFrame:CGRectZero]]; 
10
तरह काम करता है

स्विफ्ट में कैमरून ई का सही उत्तर:

tableView.backgroundView = UIView()

ध्यान दें कि self.tableView.backgroundView = nil काम नहीं है।

संबंधित मुद्दे