从片段函数更改TextView的值



我有一个名为SpeedometerFragment的片段,它具有各自的XML布局fragment_speedometer

然后我创建了一个名为fragment_distance的独立布局。没有与此XML文件相关联的活动。

我想改变textview的值"distanceText">

SpeedometerFragment的函数调用到fragment_distance

XML文件。fragment_distance被传递到我的主活动中的一个框架布局。

我在SpeedometerFragment的onCreateView中尝试了以下操作,但没有改变textview:

speedometerFragment


LayoutInflater inflater1 = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater1.inflate(R.layout.fragment_distance, container, false);
TextView dis = (TextView) v.findViewById(R.id.distanceText);
dis.setText("Test");

我想到了一个解决办法。我在最初的问题中使其复杂化,因此不需要膨胀任何东西,也不需要单独的fragment_distanceXML文件

我在主活动中创建了一个public static TextView distance

然后在我的片段中,当距离的值发生变化时,我使用Eye_Tracking_Main.distance.setText(new DecimalFormat("#.#").format(distance) + " Km");来设置TextView

的值在我的主要活动中,我简单地使用了distance=findViewById(R.id.distancemain);

最新更新