2011-11-03 15 views
6

बटन टेक्स्ट रंग और बटन आकार (आयताकार) गतिशील रूप से/प्रोग्रामेटिक रूप से कैसे बदलें?Android पर बटन और टेक्स्ट रंग को गतिशील रूप से कैसे बदलें

1) वस्तु आप बदलना

findViewById(R.id.<your_object_id>); 

2) ऑब्जेक्ट प्रकार

Button btnYourButton = (Button) findViewById(R.id.<your_object_id>); 

3 करने के लिए इसे डाली चाहते हैं के संदर्भ में मिलती है:

+3

saerch अतः http://stackoverflow.com/questions/4755871/how-to-set-image-button-backgroundimage- के लिए-अलग राज्य/4755934 # 4755934 – ingsaurabh

उत्तर

11

आप आईडी के साथ अपने main.xml में एक बटन है, तो = Button1 तो आप यह इस प्रकार के रूप में उपयोग कर सकते हैं:

setContentView(R.layout.main); 

Button mButton=(Button)findViewById(R.id.button1); 
mButton.setTextColor(Color.parseColor("#FF0000")); // custom color 
//mButton.setTextColor(Color.RED); // use default color 
mButton.setBackgroundResource(R.drawable.button_shape); 

R.drawable.button_shape (button_shape.xml):

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <gradient 
     android:startColor="#70ffffff" 
     android:centerColor="#70ffffff" 
     android:endColor="#70ffffff" 
     android:angle="270" /> 
    <corners 
     android:bottomRightRadius="8dp" 
     android:bottomLeftRadius="8dp" 
     android:topLeftRadius="8dp" 
     android:topRightRadius="8dp"/> 
</shape> 

आप अपनी खुद की आकृति फ़ाइल कर सकते हैं। इसे अपनी जरूरत के हिसाब से बदलें।

1

मूल रूप से आप योजना का पालन करना) ऑब्जेक्ट पर सेटर्स का उपयोग करें "btnYourButton"

4) अपना दृश्य दोबारा हटाएं (संभावित रूप से आवली को कॉल करना तारीख());

यह निर्भर करता है कि आप कब परिवर्तन करना चाहते हैं। मुझे लगता है कि आपके पास ऑब्जेक्ट लिस्टर आपके ऑब्जेक्ट से जुड़ा होगा, और ईवेंट निकाल दिए जाने के बाद आप अपना परिवर्तन करेंगे।

0

आपको किसी प्रकार के श्रोता की आवश्यकता होगी जहां आप किसी घटना के बारे में सुनते हैं, और जब यह कुछ सेट विधियों का उपयोग करके आकार/टेक्स्ट रंग बदलता है।

प्रयास करें:

http://developer.android.com/reference/android/view/View.OnClickListener.html

अधिक उठाई प्रतिक्रिया मुझे पता है कि क्या आप पाठ रंग और आकार बदलने के लिए में करना चाहते हैं संकेत आवश्यकता होगी देने के लिए। क्या आप गतिशील रूप से परिवर्तन से क्या मतलब है इस बारे में अधिक जानकारी दे सकते हैं?

4

आप बदल सकते हैं बटन पाठ रंग

गतिशील तरह

बटन btnChangeTextColor = (बटन) findViewbyId (btnChange); btnChangeTextColor.setTextColor (Color.BLUE);

0

@Override सार्वजनिक बूलियन onTouchEvent (MotionEvent घटना) {इस तरह के सवालों के लिए

if (event.getAction() == MotionEvent.ACTION_DOWN) { 

     start_x = event.getX(); 
     start_y = event.getY(); 

    } else if (event.getAction() == MotionEvent.ACTION_MOVE) { 

     setTitle(event.getX() + "y pos" + event.getY()); 
     RelativeLayout layout = (RelativeLayout) findViewById(R.id.lay); 

     layout.setBackgroundColor(Color.rgb((int) start_x, (int) start_y, 0)); 
    } else if (event.getAction() == MotionEvent.ACTION_UP) { 



    } 
    return true; 
} 
संबंधित मुद्दे