如何在运行时侦听EditText更改和更改ImageView可见性



有没有一种方法可以让ImageView只在InputEditText不为空之后出现?因此,在InputEditText具有某个值之前,ImageView将不会出现(隐藏或不可见(。

当然。

  1. 在图像视图的xml中添加属性:

    android:visibility="gone"

    android:visibility="invisible"

    使其在默认情况下不可见

    你可以在这里看到两者之间的区别:http://tips.androidgig.com/invisible-vs-gone-view-in-android/#:~:text=这个%20视图%20是%20不可见的%2C%20和,%20是什么%20实际的%20差异。

  2. 在活动的onCreate()方法中创建一个监听器,以跟踪InputEditText中的更改,并根据输入中的文本更改imageView的可见性

假设InputEditText视图ID为"myInput"ImageView视图ID为"myImage":

InputEditText myInput = findViewById(R.id.myInput);  
myInput.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){
ImageView myImage= findViewById(R.id.myImage);
myImage.setVisibility(View.VISIBLE);
}
}
});

最新更新