2013-04-20 7 views
5

मैं अपने एंड्रॉइड एप्लिकेशन में रीफ्रेश फीचर को पुल करने के लिए लागू करना चाहता था, इसलिए मैंने इस लाइब्रेरी को लागू किया: Android-PullToRefresh। हालांकि, मैं प्रोग्रामेटिक रूप से विभाजित करने के लिए कस्टम शैली सेट नहीं कर सकता। ,एंड्रॉइड का उपयोग करके विभाजक के साथ मैं कस्टम सूची दृश्य कैसे सेटअप करूं?

list = (PullToRefreshListView) findViewById(R.id.list); 
int[] colors = {0, 0xFF97CF4D, 0}; 
list.setDivider(new GradientDrawable(Orientation.RIGHT_LEFT, colors)); 
list.setDividerHeight(1); 

हालांकि यह इस त्रुटि फेंक है::

कोड सरल है The method setDivider(GradientDrawable) is undefined for the type PullToRefreshListView और The method setDividerHeight(int) is undefined for the type PullToRefreshListView.

मैं गलत यहाँ क्या कर रहा हूँ?

उत्तर

8

PullToRefreshListViewListView नहीं है, इसलिए यह त्रुटि है। PullToRefreshListView के अंदर आपको ListView तक पहुंचना चाहिए और उस पर setDivider* विधियों का उपयोग करना चाहिए।

list = (PullToRefreshListView) findViewById(R.id.list); 
int[] colors = {0, 0xFF97CF4D, 0}; 
ListView inner = list.getRefreshableView(); 
inner.setDivider(new GradientDrawable(Orientation.RIGHT_LEFT, colors)); 
inner.setDividerHeight(1); 

एक विकल्प के रूप में आप एक एक्सएमएल drawable के रूप में अपने ढाल को परिभाषित करने और अपने लेआउट में सही गुण सेट कर सकते हैं नमूने में बताया गया की तरह here

जैसे:

<com.handmark.pulltorefresh.library.PullToRefreshListView 
    android:divider="@drawable/fancy_gradient" 
    android:dividerHeight="@dimen/divider_height"... 
+0

यह त्रुटि देता है: 'मिस्चैच टाइप करें: ListView से PullToRefreshListView' – input

+1

से ऊपर कोड को चेक न करें: आपको अपने' PullToRefreshListView' पर 'getRefreshableView() 'का आह्वान करना चाहिए। ListView पर कास्टिंग इस मामले में बेकार है। मैं अपने जवाब में इससे छुटकारा पाउंगा। –

+0

कोड काम नहीं किया था। मैं एक एक्सएमएल drawable के साथ विभाजक स्टाइलिंग समाप्त हो गया। सहायता के लिए धन्यवाद! :) – input

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