2009-07-13 25 views
7

वर्तमान में UITableView के लिए कस्टम निश्चित पृष्ठभूमि सेट करने के तरीके पर बहुत सारे उत्तर हैं। लेकिन क्या टेबल छवियों के साथ पृष्ठभूमि छवि स्क्रॉल एक साथ बनाने के लिए कोई चाल है?UITableView के लिए स्क्रॉलिंग पृष्ठभूमि छवि?

धन्यवाद!

उत्तर

3

UIImageView *background = [[UIImageView alloc]initWithImage: [UIImage imageNamed: @"background.jpg"]]; 
    [tableView addSubview: background]; 
    [tableView sendSubviewToBack: background]; 
+1

धन्यवाद, कोशिश की, लेकिन मुझे लगता है कि SendSubviewToBack संदेश इस मामले में काम नहीं करेगा जैसा कि UIImageView कोशिकाओं के ऊपर स्थित हो जाता है। कोई सुराग? –

+1

यह दृष्टिकोण मेरी पहली कोशिश थी। इसे वापस भेजने के लिए अभी भी इसे कोशिकाओं के ऊपर रखता है। –

-6

एक संभावित जवाब था - जाहिर है - पहले से ही stackoverflow पर:

self.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed: @"desk.png"]]; 

रेफरी: iPhone - Setting background on UITableViewController

संपादित करें: यह एक आदर्श जवाब मुझे पता है :)

+2

वह प्रत्येक सेल में पृष्ठभूमि के हिस्सों का उपयोग करेगा। तो यदि आपके पास पृष्ठभूमि छवि अधिक है तो एक सेल जो काम नहीं करेगा। – OgreSwamp

+6

यह सही उत्तर नहीं है क्योंकि पृष्ठभूमि छवि तालिका के साथ एक साथ स्क्रॉल नहीं करेगी। – Bobo

+1

क्या यह काम करना चाहिए? मुझे एक ही समस्या का सामना करना पड़ रहा है जो @ ओग्रेस्वाम्प ने उल्लेख किया है, हालांकि पृष्ठभूमि तालिका के साथ स्क्रॉल करने योग्य है, सेल प्रत्येक सेल में पृष्ठभूमि के हिस्सों का उपयोग करता है। यदि यह समाधान काम नहीं करता है, तो इसे सही उत्तर के रूप में क्यों स्वीकार किया गया था? –

3

नहीं है, मुझे लगता है कि उत्तर UITableView को उपclass और लेआउट सबव्यूव ओवरराइड करना है। UITableView में आपको एक ऐसी संपत्ति बनाना चाहिए जो पृष्ठभूमि UIImageView को इंगित करता हो।

जब आप layoutSubviews ओवरराइड सिर्फ

-(void) layoutSubviews { 
    [self sendSubviewToBack: backgroundImageView]; 
    [super layoutSubviews]; 

} 
+0

अफसोस की बात है, यह सभी कोने के मामलों को ठीक करने के लिए पर्याप्त नहीं है जहां विचारों को घुमाया जाता है। – steipete

+0

कैसे? यह वास्तव में समस्या को हल करता है, मैंने इसे स्वयं करने की कोशिश की। आप किस कोने के मामलों के बारे में बात कर रहे हैं? – thewormsterror

+0

कभी-कभी, UITableView दृश्यों को shuffles। यह आईओएस संस्करणों के बीच निर्धारणात्मक और अलग नहीं है। इसका इस्तेमाल न करें। मैंने स्क्रॉलिंग UIImageView का उपयोग किया जो scrollViewDidScroll – steipete

6

बारे में आप UITableView की पृष्ठभूमि रंग संपत्ति के माध्यम से पृष्ठभूमि छवि स्थापित करने के लिए:

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]; 
+1

में पुनः-स्थितिबद्ध है यदि यह 'UITableViewController' नहीं है, तो आपको' tableView.backgroundColor = ... ' – Jochen

+0

का उपयोग करना होगा यह एक अच्छा – Eugene

+1

क्या यह आईओएस 6 में भी काम करता है? मैं इसे अपने दृश्य में कोशिश करता हूं, लेकिन कुछ भी नहीं होता है, यह अभी भी मानक grouptableview बीजी दिखाता है। – JonEasy

0

इस उत्तर भी सहायक हो सकता है। Background image that's scrollable and in synch with the UITable scrolling

इसमें तालिका दृश्यों के साथ कुछ ट्रिकरी शामिल है।

आपको एक अलग पृष्ठभूमि तालिका बनाना है जो आपकी अग्रभूमि तालिका का दास है, और यह अग्रभूमि तालिका दृश्य की सामग्री को सुनने के लिए केवीओ का उपयोग करता है संपत्ति संपत्ति।

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