我的主要活动中有一个数据库项的ListView,在我的主要活动中,我有一个方法,从我的数据库填充列表视图,该视图在main方法的oncreate上运行。
从我的主要活动中,用户可以进入菜单并单击名为“更改视图”的内容,这是一项允许用户更改数据库搜索条件的活动,然后我有一个方法从此填充列表视图搜索条件。
用户点击此活动中的更改视图按钮后,我希望应用程序返回主活动并显示此新的自定义列表视图,我首先想到的是在简历中调用此方法,但如果出于明显的原因不起作用,我们会欣赏任何方向。
答案 0 :(得分:0)
您可以使用主活动中的startActivityForResult
或列表中的活动来调用更改视图活动,然后将所选选项传递回调用活动并使用onActivityResult
来读取数据回
然后根据它填充listview
此link会为您提供一个起点。或者您可以使用official reference
答案 1 :(得分:0)
您可以使用自定义广播接收器,如下所示
当您点击按钮时,请写下此代码
Intent i = new Intent("android.intent.action.MAIN")
this.sendBroadcast(i);
finish()//finish your current button activity if this is an activity
现在是listview活动的onResume
IntentFilter intentFilter = new IntentFilter(
"android.intent.action.MAIN");
mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Update you listview
}
};
//registering our receiver
this.registerReceiver(mReceiver, intentFilter);
在onPause中你必须取消注册接收器,如下面的代码
this.unregisterReceiver(this.mReceiver);