如何刷新TableLayout中的数据?

时间:2018-03-30 08:29:06

标签: android android-layout android-fragments

我有TabbedLayout。在我的 Tab1 及其活动中,我有用于添加用户并存储在表中的字段。在我的 Tab2 中,我有一个布局,显示该表中所有添加的用户。

我的问题是,当我在 Tab1 中添加用户时,数据会被添加到表格中。当我移至 Tab2 时,将显示排除此新添加的用户的所有用户。但是如何刷新这个表?

当我更改标签时,如何刷新 Tab2 onCreateView

我尝试了下面的陈述,但没有帮助。

trackerTbl.invalidate();
trackerTbl.refreshDrawableState();

有人可以帮我刷新这张桌子吗?

1 个答案:

答案 0 :(得分:1)

在Tab1中,当表中成功添加数据然后发送广播。

Intent data_added = new Intent("data_added");
LocalBroadcastManager.getInstance(this).sendBroadcast("data_added");

在Tab2 onResume()方法中写下代码

@Override
public void onResume() {
    super.onResume();

    BroadcastReceiver receiver_insert_customer = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            // checking for type intent filter
            if (intent.getAction().equals("data_added")) {
                onResume();
            }
        }
    };
    LocalBroadcastManager.getInstance(YourActivityName.this).registerReceiver(receiver_insert_customer,
            new IntentFilter("data_added"));

    models = new ArrayList<>();
    models = databaseobject.yourmethodfetchdatafromdb();
    adapter = new customAdapter(getApplicationContext(), models);
}