所以我有几个按钮,我希望应用程序屏幕的背景根据点击的按钮而改变。所以如果我点击一个写有“蓝色”的按钮,背景会变成我在res文件夹中创建的指定图像。提前致谢。Android;通过单击按钮更改布局/屏幕的背景
回答
要通过使用代码
public void onClick(View v) {
if(v==ButtonName)
ButtonName.setImageResource(R.drawable.ImageName);
}
,或者使用XML文件
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/login_selected" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/login_mouse_over" /> <!-- focused -->
<item android:drawable="@drawable/login" /> <!-- default -->
改变图像
的OnClick只需添加以下代码
ButtonName.setBackgroundDrawable(getResources().getDrawable(R.drawable.ImageName))
即使你想我的背景绘制的,在这里是:
android:background="@drawable/ImageName"
现在,你可以复合他们
他想改变屏幕的背景,而不是按钮:) – Houcine 2012-01-07 15:03:52
仔细看看我的答案老兄:) – El3ctr0n1c4 2012-01-07 15:05:17
我当我回家时,我会尝试它,谢谢你的回应:) – user565460 2012-01-07 15:06:39
在onCreate()
方法让你Views
这样的:
rootLayout = (LinearLayout) findViewById(R.id.rootLayout);
btnBlue = (Button) findViewById(R.id.btnBlue);
btnRed = (Button) findViewById(R.id.btnRed);
btnGreen = (Button) findViewById(R.id.btnGreen);
,并设置onClickListener
在这样所有的按钮:
btnRed.setOnClickListener(this);
btnGreen.setOnClickListener(this);
btnBlue.setOnClickListener(this);
和覆盖方法onClick()
是这样的:
@Override
public void onClick(View v){
Drawable background = null;
switch(v.getId()){
case R.id.btnBlue :drawable = getResources().getDrawable(R.drawable.imageBlue); break;
case R.id.btnRed : drawable = getResources().getDrawable(R.drawable.imageRed); break;
case R.id.btnGreen : drawable = getResources().getDrawable(R.drawable.imageGreen); break;
}
rootLayout.setBackgroundDrawable(background);
}
伟大的作品。谢谢。 – user565460 2012-01-07 22:51:49
如果有效,请接受答案:)。听到那个消息很开心 – Houcine 2012-01-08 00:32:09
- 1. 更改布局背景按钮按
- 2. 通过单击按钮更改屏幕上的Flash文件
- 3. 通过按钮单击更改窗体背景图像
- 4. 通过编程在android中更改背景颜色布局
- 5. 单击按钮颜色遍布屏幕
- 6. Android:如何通过XML中的按钮更改背景图像
- 7. 当点击按钮时更改屏幕
- 8. 通过该布局上的子按钮更改父布局
- 9. 更改QT布局背景
- 10. 点击按钮背景更改
- 11. 点击时更改按钮背景
- 12. 点击时WPF按钮更改背景
- 13. 更改背景点击按钮
- 14. 更改按钮的背景
- 15. 如何通过单击按钮来更改页面背景和字体颜色?
- 16. 扩大大屏幕按钮的布局?
- 17. 更改单选按钮背景图像
- 18. 更改按钮背景
- 19. Android单击后更改背景颜色
- 20. 单击时更改按钮的背景颜色
- 21. 如何更改按钮和背景之间的按钮背景?
- 22. 如何通过更改TextViews重新布局来避免屏幕?
- 23. 如何根据单选按钮更改按钮单击的布局?
- 24. 如何更改屏幕背景汇编
- 25. 更改Silverlight全屏幕背景颜色
- 26. 在按钮点击时在ListView中更改按钮背景
- 27. 我不能点击在布局背景上的按钮
- 28. 更改首选项屏幕的布局
- 29. 在提醒按钮上单击更改div背景
- 30. 如何在iPhone中单击时更改按钮背景图像?
这是我的答案,这是正确的,不是他大声笑,你接受了翁的回答男人 – Houcine 2012-01-10 15:55:11