首页 > 解决方案 > 从片段函数更改 TextView 的值

问题描述

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

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

我想fragment_distanceSpeedometerFragment.

fragment_distance传递给我的主要活动中的 frameLayout。

我在 onCreateView 中尝试了以下内容,SpeedometerFragment但 textview 没有变化:

车速表片段


       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");

标签: androidandroid-fragmentstextviewlayout-inflaterandroid-inflate

解决方案


我想出了一个解决办法。我在我原来的问题中把它复杂化了,所以不需要膨胀任何东西,也不需要单独的fragment_distanceXML 文件

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

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

在我的主要活动中,我只是使用了distance=findViewById(R.id.distancemain);


推荐阅读