Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android getView()返回textview,但textview未更新_Android - Fatal编程技术网

Android getView()返回textview,但textview未更新

Android getView()返回textview,但textview未更新,android,Android,我有一个片段a扩展了B。在B的内部,我在onCreateView中初始化我的视图,如下所示 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mView = super.onCreateView(inflater, container, savedInstanceState); mText1 = (TextVi

我有一个片段a扩展了B。在B的内部,我在
onCreateView
中初始化我的视图,如下所示

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{
    mView = super.onCreateView(inflater, container, savedInstanceState);
    mText1 = (TextView) mView.findViewById(R.id.textView1)
    mText2 = (TextView) mView.findViewById(R.id.textView2)
    retrun mView
}
但是在我的文本更新方法中,如果我尝试像这样获取
mText1
(我知道您可以从以前使用
mText1
字段,但这不是重点)

请注意,我使用
getView()
获取
mText1
。奇怪的是,屏幕上只设置了
mText2
,而
mText1
完全为空


编辑:另外,如果我切换到另一个片段,然后返回,mText1和mText2都不会得到更新

如果您有多个活动片段将textview定义为R.id.textView1,那么您可能在视图层次结构中的其他地方找到了textview。调用setText()时没有得到NullPointerException,因此findViewById()返回了一些内容

由于getView()返回活动的根视图,findViewById将找到具有该id的第一个视图


尝试使用mView.findViewById(…)将搜索限制为仅搜索片段中的视图。

我从第三方库获得一个静态引用,该库使旧片段保持活动状态:(

这是一个很好的猜测,但不是问题所在。我在上面添加了附加信息。当我返回片段时,也会出现此问题,但所有视图都不起作用
public void updateView()
{
  mText1 = (TextView) getView().findViewById(R.id.textView1);
  mText1.setText("test");
  mText2.setText("test");
}