我希望我的切换按钮的ON文本很大而OFF文本很小。但不能这样做..有什么建议吗?这就是我的尝试
mf=(ToggleButton)findViewById(R.id.mf);
if(mf.isEnabled()==true)
{
mf.setTextSize(13);
}
else
mf.setTextSize(8);
答案 0 :(得分:15)
每次单击按钮时都必须调用您的代码。所以使用:
toggleButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (toggleButton.isChecked()) {
toggleButton.setTextSize(13.0f);
} else {
toggleButton.setTextSize(8.0f);
}
}
});
您可以使用简单方法设置OnClickListner。在.xml中添加选项
android:onClick="nameOfMethod"
然后在你的代码中:
public void nameOfMethod(View v){
}
其中v是这种情况下的togglebutton(ToggleButton mf =(ToggleButton)v;)
答案 1 :(得分:4)
我把解决方案放在这里:
mf=(ToggleButton)findViewById(R.id.mf);
if(mf.isChecked())
{
mf.setTextSize(13);
}
else
mf.setTextSize(8);
使用isChecked()而不是isEnabled()
答案 2 :(得分:3)
您需要进行一些调试。
首先:
if(mf.isEnabled()==true)
可以
if (mf.isEnabled())
它上面的mf.setTextSize(13)
是否按预期工作?
添加一些日志记录:
if (mf.isEnabled())
{
// Add some logging, is this line reached correctly?
mf.setTextSize(13);
}
else
// Add some logging, is this line reached correctly?
mf.setTextSize(8);
您需要将isEnabled()
更改为isChecked()
。 isEnabled()
意味着,无论是否已启用。您想知道该按钮是否已被选中。