Android:自定义对话框如何将意图结果返回到父活动

时间:2013-07-29 21:10:38

标签: android android-intent customdialog onactivityresult

在我的mainactivity课程中,点击一个按钮,它会显示一个对话框,显示“捕捉照片”,“捕捉视频”,在点击任何按钮后从画廊“按钮中选择”执行相应的操作并将文件路径返回到mainactivity。 在startActivityForResult&onActivityResult中使用mainactivity很容易。 但是如何在自定义对话框中使用intent并将自定义对话框中的意图结果返回到mainactivity

感谢您的时间。

takeaPhoto.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(intent, ACTION_TAKE_PHOTO);
    }
});

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    switch(){
        //do action
        String filePath = data.getDataString();
        filename.setText(filePath);
    }
}

1 个答案:

答案 0 :(得分:2)

这并不难。只需使用提醒对话框并确保您的观点正确。

final Context context = this;
static final int SELECT_PICTURE = 1; 

takeaphoto.setOnClickListener(new View.OnClickListener() {
public void onClick(View v){  

LayoutInflater myLayout = LayoutInflater.from(context);
final View dialogView = myLayout.inflate(R.layout.YOURCUSTOM.XML, null);
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
alertDialogBuilder.setView(dialogView);
final AlertDialog alertDialog = alertDialogBuilder.create();        


Button button1 = (Button) dialogView.findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener(){
public void onClick(View v) {


Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent, SELECT_PICTURE);
}});

alertDialog.show();
return;}});