tru*_*ero 9 android android-activity
我有一个显示项目网格视图的活动.当我点击其中任何一个时,我移动到显示该项目信息的另一个活动.我也可以选择返回(gridview活动)或删除它.
如果我删除它,我需要刷新gridview,所以我需要发送一个变量"eey,我删除了一个项目.你需要刷新".
我想我需要用startActivityForResult打开第二个活动,但我不知道应该如何设置该值.
选项1(后退箭头):完成活动.没有结果回来.选项2(删除项目):完成活动并重新设置结果.
提前致谢!
Vip*_*hit 14
您可以设置自定义结果.喜欢DELETE_ITEM.
在删除按钮上执行以下操作:
public static int DELETE_ITEM = 1234;
Intent intent = new Intent();
intent.putExtra("ITEM_ID", YOUR ITEM ID);
setResult(DELETE_ITEM , intent);
Run Code Online (Sandbox Code Playgroud)
现在,在您的活动结果上执行以下操作:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (resultCode == DELETE_ITEM) {
// CODE TO DELETE ITEM
super.onActivityResult(requestCode, resultCode, intent);
}
}
Run Code Online (Sandbox Code Playgroud)
Ben*_*hew 12
希望这可以帮助
头等舱
Intent i = new Intent(this, Second.class);
startActivityForResult(i, 1);
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
String result = data.getStringExtra("result");
//your code
}
if (resultCode == RESULT_CANCELED) {
// Write your code if there's no result
}
}
}
Run Code Online (Sandbox Code Playgroud)
二等
Intent returnIntent = new Intent();
returnIntent.putExtra("result", "your message");
setResult(RESULT_OK, returnIntent);
finish();
Run Code Online (Sandbox Code Playgroud)
是的你必须使用startActivityForResult.在调用完成显示项目信息的活动之前,您必须致电
setResult(resultCode, data);
finish();
Run Code Online (Sandbox Code Playgroud)
在GridView的Activity中将被调用
protected void onActivityResult(int arg0, int resultCode, Intent data)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11758 次 |
| 最近记录: |