2010-08-28 16 views
8

मैं scrollbars को EditText प्रोग्रामेटिक रूप से गतिशील रूप से सेट करना चाहता हूं, लेकिन मुझे यह एपीआई सेटक्रॉलबार के रूप में नहीं मिला है। क्या कोई मुझे बता सकता है कि यह प्रोग्रामेटिक रूप से किया जा सकता है?"एंड्रॉइड: scrollbars = लंबवत" प्रोग्रामेटिक रूप से कैसे सेट करें?

android:scrollbars="vertical" 

क्या यह संभव है? मैं इस प्रोग्रामेटिक रूप से कैसे प्राप्त कर सकता हूं?

उत्तर

3

मैं इस प्रोग्राम को भी करने के लिए एक तरीका ढूंढ रहा था।

http://developer.android.com/reference/android/view/View.html#attr_android:scrollbars से लगता है यह संभव नहीं है, कारण कोई संबंधित विधि वहाँ उल्लेख किया है।

एकमात्र तरीका है कि वर्णन से अच्छा लगता है है:

View.setVerticalScrollBarEnabled(boolean) 

लेकिन मेरे मामले में यह काम नहीं किया। लेकिन यह लेआउट और जिस तरह से उपयोग किया जाता है उस पर निर्भर हो सकता है।

मैं दो लेआउट होने के बारे में अब सोच रहा हूँ: विशेषता "कोई नहीं" और एक सेट करने के लिए "ऊर्ध्वाधर" करने के लिए सेट के साथ एक। फिर कोड में मैं तय कर सकता हूं कि किस का उपयोग करना है।

+0

हाय, यह नहीं था मेरे लिए भी काम नहीं किया है। अगर आपके पास कोई अन्य सुझाव है तो कृपया पोस्ट करें। – Raj

0

आपको एंड्रॉइड को ओवरराइड करना होगा: scrollbarTrackVertical और android: scrollbarThumbVertical drawables स्वयं के साथ। आप इसे कोड या स्टाइल के साथ कर सकते हैं।

यह link है जो दिखाता है कि कस्टम बटन कैसे करें। स्क्रॉलबार के लिए सिद्धांत समान है।

+0

मैं donot अपने आप stying सेट करना चाहते हैं, मैं एंड्रॉयड जानना चाहता हूँ: स्क्रॉलबार = "कैसे कोड पूरा उपयोग करने के लिए खड़ी के रूप में एंड्रॉयड:। पाठ, ican उपयोग कोड (देखें) setText() – pengwang

0
final TypedArray typedArray = context.obtainStyledAttributes(null, new int[]{}); 
      try { 
       Method method = View.class.getDeclaredMethod("initializeScrollbars" , TypedArray.class); 
       method.invoke(this, typedArray); 
      }catch (Exception e) { 
      } 
      typedArray.recycle(); 
setVerticalScrollBarEnabled(true); 
संबंधित मुद्दे