Android 如何在适配器列表视图中调用onActivityResult?
我正在学习如何在自定义适配器列表视图中使用resultActivity更改单个项。它是如何工作的 这是在自定义适配器列表视图中生成startActivityForResult时我的代码Android 如何在适配器列表视图中调用onActivityResult?,android,listview,android-listview,onactivityresult,Android,Listview,Android Listview,Onactivityresult,我正在学习如何在自定义适配器列表视图中使用resultActivity更改单个项。它是如何工作的 这是在自定义适配器列表视图中生成startActivityForResult时我的代码 holder.isi_layout.setOnClickListener(new android.view.View.OnClickListener(){ public void onClick(View v) { In
holder.isi_layout.setOnClickListener(new android.view.View.OnClickListener(){
public void onClick(View v)
{
Intent i = null;
i = new Intent(activity, DetailLaporanActivity.class);
Bundle b = new Bundle();
b.putString("position", Integer.toString(position));
i.putExtras(b);
activity.startActivityForResult(i, mRequestCode);
activity.overridePendingTransition (R.anim.push_left_in, R.anim.push_left_out);
}
});
这是一个很好的结果
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode==mRequestCode) {
if(resultCode == RESULT_OK){
String position = data.getStringExtra("position");
String status_favorite = data.getStringExtra("status_favorite");
String jumlah_favorite = data.getStringExtra("jumlah_favorite");
String jumlah_komentar = data.getStringExtra("jumlah_komentar");
}
Toast.makeText(getApplicationContext(), "This code Success get Result", Toast.LENGTH_LONG).show();
}
}
当我在适配器中设置ResultActivity时,代码是错误的,RESULT\u OKget notice无法解析为变量
但是如果我把MainActivity放进去,这不是错误,而是没有得到值结果,我会用Toast.makeText(getApplicationContext(),“this code Success get result”,Toast.LENGTH_LONG).show()检查但是没有吐司
有人帮我吗?工作怎么样?
对不起,对于我的英语…您添加了未解析的结果\u OK,所以您应该在
detailLaporaActivity.class
中这样设置它
public class DetailLaporanActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setResult(RESULT_OK);
}
}
然后,您可以在您的
onActivityResult
方法中使用RESULT\u OK。您添加了未解析的RESULT\u OK,因此您应该在detailLaporaActivity.class
中设置它
public class DetailLaporanActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setResult(RESULT_OK);
}
}
然后,您可以在ActivityResult方法中使用RESULT_OK。这是因为RESULT_OK是Activity类的常量。因此,您需要在适配器类中将其限定为:
Activity.RESULT_OK
这是因为RESULT_OK是Activity类的常量。因此,您需要在适配器类中将其限定为:
Activity.RESULT_OK
酷!我也认为他的解决方案是真实的。瑞克,你的解决方案对我有效。谢谢我认为这与扩展一个片段有关,而不是一个活动。酷!我也认为他的解决方案是真实的。瑞克,你的解决方案对我有效。谢谢我认为这与扩展一个片段有关,而不是一个活动。你能帮助我适配器类内的onActivityResult没有被调用吗?你能帮助我适配器类内的onActivityResult没有被调用吗?