我有这个ToggleButton,它应该在切换开/关时更改其他按钮的drawable(和功能)。
到目前为止,通过使用此代码,我仅设法使其工作了一种方式。
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
toggle = (ToggleButton) findViewById(R.id.bRedGreen);
toggle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
minuskugle = (Button) findViewById(R.id.bBallhole);
minuskugle.setBackgroundResource(R.drawable.redballinhole);
}
});
}
如何使其再次将可绘制对象重新设置为默认值?
__________________________________________________________________________________
这适用于一个条目。
但是,如果我添加多个条目,则会出现“ else”错误。
这有效:
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
pluskugle = (Button) findViewById(R.id.bBallhole);
minuskugle = (Button) findViewById(R.id.bBallhole);
pluskegle = (Button) findViewById(R.id.bKegle);
minuskegle = (Button) findViewById(R.id.bKegle);
if(toggle.isChecked())
minuskugle.setBackgroundResource(R.drawable.redballinhole);
else
pluskugle.setBackgroundResource(R.drawable.whiteballhole);
这不是
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
pluskugle = (Button) findViewById(R.id.bBallhole);
minuskugle = (Button) findViewById(R.id.bBallhole);
pluskegle = (Button) findViewById(R.id.bKegle);
minuskegle = (Button) findViewById(R.id.bKegle);
if(toggle.isChecked())
minuskugle.setBackgroundResource(R.drawable.redballinhole);
minuskegle.setBackgroundResource(R.drawable.redkegle);
else
pluskugle.setBackgroundResource(R.drawable.whiteballhole);
pluskegle.setBackgroundResource(R.drawable.redkegle);
最佳答案
尝试这个:
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
toggle = (ToggleButton) findViewById(R.id.bRedGreen);
toggle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
minuskugle = (Button) findViewById(R.id.bBallhole);
if(toggle.isChecked())
minuskugle.setBackgroundResource(R.drawable.redballinhole);
else
minuskugle.setBackgroundResource(R.drawable.xy);
}
});
}
关于java - <ToggleButton> onClickListener-将可绘制对象更改回默认值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9062104/