【问题标题】:TextView visibility change notificationTextView 可见性更改通知
【发布时间】:2014-08-06 06:32:47
【问题描述】:

我需要检测TextView 何时变为可见以及何时变为不可见。有没有办法在Android中做到这一点?当我的应用程序中的TextView 更改可见性时,我必须进行一些处理。实际上,它在许多地方的知名度正在更新,我希望避免在所有这些地方打电话。

【问题讨论】:

  • 使用这个:-对于可见的 textview.setvisibilty(View.Visible) & for visibilty Gone textview.setvisibilty(View.Gone)。
  • 您自己设置可见性,据我所知,在 UI 上绘制控件时没有侦听器。在使控件可见之前更改 TextView 的文本或其他属性。

标签: android android-layout textview android-ui


【解决方案1】:

我不知道这是否会回答你的问题,但如果你想收听 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

希望对你有帮助:)

【讨论】:

  • 很高兴它有帮助:),我建议接受答案?
【解决方案2】:
visibility="gone" 

在你的 xml 文件中

【讨论】:

    【解决方案3】:
    static boolean textviewon=false;
    if(textviewon){
    textview.setvisibility(View.Visible);
    }else
    textview.setvisibility(View.Invisible);
    

    将上述条件放入您的代码中

    【讨论】:

    • 解释/上下文总是比单独提供代码改进答案。
    • 请编辑您的答案并添加一些解释以使其看起来更好。
    • ..这也只是检查当前状态。它不听状态变化,这是问题所在。
    猜你喜欢
    • 2023-03-23
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 2020-12-06
    • 2015-03-14
    • 1970-01-01
    • 2017-11-15
    相关资源
    最近更新 更多