如何动态更新片段视图

时间:2012-09-02 18:00:29

标签: android bluetooth android-fragments

我必须为我的大学实施申请,我需要专家的一些建议:)。我有一个使用PageIndicator的活动,每个页面都是一个片段。当前显示最多一页。在每个片段中有4个小部件,其中包含通过蓝牙从应用程序读取的值(有一个串行设备通过蓝牙向应用程序发送数据)我认为我的活动必须有一个独立的线程,在循环中与串行设备通信。但是当这个线程读取值时,如何将数据发送到当前片段,特别是指定的小部件?当前窗口小部件必须显示最近读取的数据。换句话说,我需要知道活动线程如何将dato发送到当前片段。 对不起我的英文

1 个答案:

答案 0 :(得分:5)

创建片段时,将它们记录在ArrayList中并创建一个扩展Fragment

的自定义片段类
static public ArrayList<CustomFragment> fragmentsList = new ArrayList<CustomFragment>();

// create new fragment
// Example:
// CustomFragment myFragment = new FragmentOne();

fragmentsList.add(newlyCreatedFragment);

并在片段内创建一个接收更新的方法,例如

你的片段类:

public class CustomFragment extends Fragment {

    public void receiveUpdate(String update) {
      // Do something
    }
}
然后使用“extends CustomFragment”

代替“extends Fragment”

然后从其他班级

CustomFragment theFragment = SomeClass.fragmentsList.get(0); // where 0 is the fragment's index
theFragment.receiveUpdate("the update");