开发者

change background color of the layout in Android

I have a simple Android application, with 3 buttons. When i click on the 1st button, i wanna change the background color of the layout (which is now white... i wanna change in other color, when i press the button). How can i do this?

On that button, i have a myClickHndler event

    public void myClickHandler(View view) {
    switch (view.getId()) {
    case R.id.Button01:
        text.setText("Button 1 was clicked");
        break;
    case R.id.Button03:
        //text.setText("Button 3 was clicked");
                    .................... // ?
        break;
    }
}

Thanks开发者_运维技巧!


Give an Id to your LinearLayout like this:

<LinearLayout android:id="@+id/laidout"
        ...>

and then from your java class say:

...
case R.id.Button03:
//text.setText("Button 3 was clicked");
  .................... // ?
mlayout= findViewById(R.id.laidout);
// set the color 
mlayout.setBackgroundColor(Color.WHATEVER);
// you can use setBackgroundResource() and pass appropriate ID
// if you want a drawable bundled as resource in the background
mlayout.setBackgroundResource(R.drawable.background_img);
break;
...

[EDIT]: added code for thing requested in comment


If you want to change the background dynamically, use

 YourView.setBackgroundColor(Color.argb(255, 255, 255, 255));


setBackgroundDrawable is deprecated

Try the following simple code...

Working Code:

LinearLayout linearLayout = (LinearLayout)findViewById(R.id.mainLayout);
linearLayout.setBackgroundResource(R.drawable.backrepeat_blue);

enjoy


Try the following code...

Code:

Resources res = getResources();
Drawable drawable = res.getDrawable(R.drawable.newImage); 
LinearLayout linearLayout = (LinearLayout)findViewById(R.id.GameLayout);
linearLayout.setBackgroundDrawable(drawable);

Hope this helps.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜