在我的ArrayAdapter
我有AlertDialog
按钮。现在我想使用ActivityForResult
。在这个简单的代码中,我可以使用Intent
来查看其他Activity
但我无法在ArrayAdapter
中传递数据。
public class AdapterReceiveSMS extends ArrayAdapter<ReceivedItemStructure> {
private myDialog dialog;
public AdapterReceiveSMS(ArrayList<ReceivedItemStructure> array) {
super(G.context, R.layout.rsms, array);
}
/* ----- Clicking on Forward Button ----- */
forward_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(
G.activityDialogContext);
View vForward = G.inflater.inflate(R.layout.forward, null);
builder.setView(vForward);
final AlertDialog sms_dialog = builder.create();
sms_dialog.show();
from_file.setOnClickListener ( new View.OnClickListener () {
@Override
public void onClick (View v) {
Intent fileBrowser = new Intent(G.activity,ActivityFileBrwoser.class);
G.activity.startActivityForResult ( fileBrowser, 1 );
}
} );
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
}
}
答案 0 :(得分:0)
onActivityResult在一个重写的Activity类方法中,当你启动的一个活动退出时调用它,给你启动它的requestCode,它返回的resultCode,以及它的任何其他数据。“
您使用此代码
开始了活动G.activity.startActivityForResult ( fileBrowser, 1 );
你必须将onActivityResult方法放在你的调用活动中(我指的是你在创建AdapterReceiveSMS类对象的活动。)
答案 1 :(得分:0)
您无法向类添加回调方法,并希望系统调用它。 onActivityResult属于您的Activity,然后可以将信息传递给您的适配器。