我有一个按钮,我想在按钮上打开和关闭按钮,我需要的是我有两个背景图像。
当我第一次点击按钮时,首先应该完成背景图像,第二次应该像切换按钮一样改变第二个背景图像。
任何人请帮助我,因为我是新手。
这是我的活动:
public class MainActivity extends Activity {
private Button Button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button1 = (Button) findViewById(R.id.Button1);
Button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
v.setBackgroundResource(R.drawable.ic_launcher);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
感谢。
答案 0 :(得分:1)
使用以下代码在drawable中创建一个xml文件,并将按钮的背景更改为此drawable
customButton.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="false" android:drawable="@drawable/image_not_pressed"> </item>
<item android:state_pressed="true" android:drawable="@drawable/image_pressed"></item>
</selector>
然后为图像添加背景
<ImageView
android:layoutWidth="wrap_content"
android:layoutWidth="wrap_content"
android:background="@drawable/customButtom" />
答案 1 :(得分:0)
您可以维持setSelected
的{{1}}状态,并通过Button
点击<{p}}检查图片是否为isSelected
尝试使用
Button
让我知道这是否有效。
答案 2 :(得分:0)
你可以使用setTag来做到这一点。
首先&GT;
Button1.setTag("ON");
其次在你的onclicklistener中添加:
if (v.getTag().toString().equals("ON")) {
v.setTag("OFF");
v.setBackgroundResource(R.drawable.ic_launcher);
}else {
v.setTag("ON");
v.setBackgroundResource(R.drawable.ic_launcher2);
}
答案 3 :(得分:0)
使用ImageButton
代替Button
,通过setImageResource(int)
方法更改ImageButton表面上的图片。