在编辑文本中提供输入时设置按钮的可见性

时间:2018-09-08 19:25:33

标签: android

我有一个按钮“确定”。一个编辑文本。 我只想在我们提供编辑文本输入时才使“确定”按钮可见。 一旦我在编辑文本中输入第一个数字,按钮就会可见。

如何在android studio中编写代码?

3 个答案:

答案 0 :(得分:1)

这是一个简单的例子。您需要自己初始化变量,可以通过Googling轻松学习。

editText.addTextChangedListener(new TextWatcher() {
    @Override
    public void afterTextChanged(Editable s) {}

    public void beforeTextChanged(CharSequence s, int start, int count, int after) {}

    public void onTextChanged(CharSequence s, int start, int before, int count) {
        button.setVisibility(s.length > 0 ? View.VISIBLE : View.INVISIBLE);
});

答案 1 :(得分:0)

基本上在下面的代码中,我在edittext中添加了 TextChangeListener ,当在edittext中写入任何内容时,它会进行监听,并且 setVisibility 属性有助于切换按钮的可见性。

   editText1.addTextChangedListener(new TextWatcher() {

    @Override
    public void onTextChanged(CharSequence s, int start, int before, int count) {

       if(s.toString().trim().length()==0){
            button.setVisibility(View.GONE);
          } else {
            button.setVisibility(View.VISIBLE);
          }
    }

    @Override
    public void beforeTextChanged(CharSequence s, int start, int count,
            int after) {
        // TODO Auto-generated method stub

    }

    @Override
    public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub

    }
});

答案 2 :(得分:-1)

**Try below code. I hope it will help you.**

editText1.addTextChangedListener(new TextWatcher() {

   @Override
   public void afterTextChanged(Editable s) {}

   @Override    
   public void beforeTextChanged(CharSequence s, int start,
     int count, int after) {
   }

   @Override    
   public void onTextChanged(CharSequence s, int start,
     int before, int count) {
      if(s.length() != 0)
     button.setVisibility(View.VISIBLE);

   }
  });