我使用(+/-)按钮来增加或减少计数器,但是我将上限设置为2,因此我想在计数器达到2后禁用ElegantNumber按钮的加号按钮,并且我希望减号按钮保持活跃。
public class MainActivity extends AppCompatActivity {
ElegantNumberButton numberbutton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
numberbutton=(ElegantNumberButton)findViewById(R.id.numberButton);
// counter=(TextView)findViewById(R.id.counterTxt);
numberbutton.setOnValueChangeListener(new ElegantNumberButton.OnValueChangeListener() {
@Override
public void onValueChange(ElegantNumberButton view, int oldValue, int newValue) {
String count= numberbutton.getNumber();
int temp=Integer.parseInt(count);
if(temp>=2 ) {
Toast.makeText(MainActivity.this, "NO more casual leave allowed", Toast.LENGTH_SHORT).show();
numberbutton.setEnabled(false);
}
}
});
}
答案 0 :(得分:1)
如果您是用 ElegantNumberButton 来指this,我会说它并不是一个真正的按钮。这是一个RelativeLayout,因此其 setEnabled()不会更改其中的任何子级。要禁用+/-按钮,请尝试以下代码:
for (int i = 0; i < numberbutton.getChildCount(); i++) {
View child = numberbutton.getChildAt(i);
child.setEnabled(false);
}