【问题标题】:Handle textview state when fragment orientation changes当片段方向改变时处理文本视图状态
【发布时间】:2014-03-06 17:51:33
【问题描述】:

我的片段布局中有一个文本视图,默认可见状态 = "GONE"; 在我的片段类中,我向 textview 添加了一些信息并显示它。我的片段有 setretaininstance = true 用于 cursorLoader 保存。 但是当我的方向改变时,我的文本视图总是隐藏起来。我认为是因为:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    view = inflater.inflate(R.layout.fragment, null);
    tvNowUsedFiltres = (TextView) view.findViewById(R.id.tvTextView);

将状态更改为“已消失”。但我无法保存我的实例状态,因为 bundle 总是返回 null 且 setretaininstance = true。 如何保存我的文本视图状态?

【问题讨论】:

    标签: android android-fragments


    【解决方案1】:

    setRetainInstance() 不适用于小部件,因为小部件连接到 Activity(而不是 Fragment)。

    所以,你需要做的就是在 Fragment 类中放入一个成员布尔值,并在 onCreateView() 中,在获取该文本视图后重置它的可见性参数:

    tvNowUsedFiltres = (TextView) view.findViewById(R.id.tvTextView);
    
    if (myNewBoolean) {
        tvNowUsedFiltres.setVisibility(View.VISIBLE);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多