TextView可见性更改通知

时间:2014-08-06 06:32:47

标签: android android-layout textview android-ui

我需要检测何时使TextView可见以及何时使其不可见。在Android中有什么办法吗?当我的应用程序中的TextView更改可见性时,我将进行一些处理。实际上,它的可见性正在许多地方进行更新,我希望避免在所有这些地方打电话。

3 个答案:

答案 0 :(得分:2)

我不知道这是否会回答您的问题,但如果您想听取textview可见性更改,我建议您自定义TextView并为其实现自己的侦听器。

public class TextViewExtension extends TextView {


protected OnVisibilityChange mChangeListener = null;

public interface OnVisibilityChange{
    void onChange(TextViewExtension mTextView , int mPrevVisibility , int mNewVisibility);
}

public TextViewExtension(Context context) {
    super(context);
    // TODO Auto-generated constructor stub
}

/* (non-Javadoc)
 * @see android.view.View#setVisibility(int)
 */
@Override
public void setVisibility(int visibility) {
    // TODO Auto-generated method stub
    super.setVisibility(visibility);
    if(mChangeListener != null){
        mChangeListener.onChange(this, getVisibility() , visibility);
    }
}

public void setOnVisibilityChange(OnVisibilityChange mChangeListener ){
    this.mChangeListener = mChangeListener;
}

}

Here are examples for further implementation if you are curious

希望有所帮助:)

答案 1 :(得分:0)

static boolean textviewon=false;
if(textviewon){
textview.setvisibility(View.Visible);
}else
textview.setvisibility(View.Invisible);

在您的代码中添加上述条件

答案 2 :(得分:0)

visibility="gone" 
你的xml fil中的