2013-07-29 125 views
2

在我的主要活動類中,單擊按鈕時,它會顯示一個對話框,其中顯示「捕獲照片」,「捕獲視頻」,從圖庫中選擇「按鈕這些按鈕中的任何一個都必須執行相應的操作並返回文件的路徑爲mainactivity。 在主活動中使用startActivityForResult & onActivityResult可以很容易。 但是,如何在自定義對話框中使用intent並將意圖結果從定製dilaog到mainactivity。Android:Custom Dialog如何將意圖結果返回給父活動

感謝您的時間。

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

公共無效onActivityResult(INT requestCode,INT發送resultCode,意圖數據){

開關(){

//做動作

字符串文件路徑= data.getDataString();

filename.setText(filePath); }}

回答

1

這並不難。只需使用警報對話框,並確保您的觀點是正確的。

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;}}); 
+0

非常感謝:-) !.它爲我工作。 – ss45

相關問題