2013-01-18 24 views
2

我使用按鈕的onClick此代碼爲選秀圖像從GALLARY

我想通過使用putExtra和來自同一個活動,我嘗試從意圖字符串返回後返回null getExtra值從GALLARY回使用getExtra從onActiviryResult獲取這個值,但是我得到了空vlaue。這是任何方式來獲得我使用意向傳遞的字符串值,並且這個意圖打開畫廊挑選圖像,然後返回到相同的活動,我想獲得我意圖傳遞的字符串。onActivityResult與圖像

Intent intent = new Intent(); 
    intent.setType("image/"); 
     intent.setAction(Intent.ACTION_PICK); 
     intent.putExtra("image_field_tag", field_tag); 
     startActivityForResult(Intent.createChooser(intent, "Select Picture"), Integer.parseInt(fieldDetlKey)); 

從上面的代碼intent.putExtra("image_field_tag", field_tag);值我在onActivityStart看到下面的代碼

@Override 

protected void onActivityResult(int requestCode, int resultCode, Intent data){ 
super.onActivityResult(requestCode, resultCode, data);<br> 
Bundle bundle = data.getExtras(); 
String imgTag = bundle.getString("image_field_tag"); 
Log.d("image Tag", imgTag); 
Log.d("requestCode",""+requestCode); 
Log.d("resultCode", ""+resultCode); 
} 

我正在變imgTag的空值越來越空值,請告訴我如何從onActivityResult

獲得額外的價值

Thanx,

+0

,因爲您要發送意圖其他活動。如果你想收到'image_field_tag'在'onActivityResult'你需要使用'從你正在使用'startActivityForResult' –

+0

開始活動setresult'不,我想送意圖同樣的活動,並設置圖像這是我從圖庫中選擇,但基於「image_field_tag」值 –

+0

嘿,你得到了正確的答案? – Exceptional

回答

-3

當我們想要一個結果被子活動返回時,我們需要通過方法調用它startActivityForResult()。當子活動與作業完成時,應該將數據設置爲意圖,並調用setResult(resultcode,intent)方法來通過意圖返回數據。
詳細.Refer本教程

http://saigeethamn.blogspot.in/2009/08/android-developer-tutorial-for_31.html

+0

要從當時我從getExtra越來越空值時開畫廊 –

+0

哎沒u得到這個正確的答案,我把畫廊後挑形象得到相同的活性值??? – Exceptional

2
/**Hi Use Requestcode for identify every request*/ 

公共靜態最終詮釋SELECT_PICTURE_REQUESTCODE = 200;

/** 
* start phone Gallery for image selection. 
*/ 
    private final void GalleryActivity() { 
    final Intent mIntent = new Intent(); 
     mIntent.setType("image/*"); 
     mIntent.setAction(Intent.ACTION_GET_CONTENT); 
     this.startActivityForResult(mIntent, Constant.SELECT_PICTURE_REQUESTCODE); 
} 

public void onActivityResult(int requestCode, int resultCode, Intent data) { 

    if (resultCode == RESULT_OK) { 

     if (requestCode == Constant.SELECT_PICTURE_REQUESTCODE && data != null) { 
      final Uri Selected_Image_Uri = data.getData(); 
      final String Selected_Image_Path = GetImagePath_FromUri(Selected_Image_Uri); 
      Toast.makeText(this, "Image Path = " + Selected_Image_Path, Toast.LENGTH_LONG).show(); 
     } 
    } 

} 

/**This function use for get image file path from uri 
    * @param uri for selected image 
    * @param context activity reference 
    * @return String 
    */ 
private final String GetImagePath_FromUri(Uri uri) { 
     final String[] Projection = { MediaStore.Images.Media.DATA }; 
     final Cursor mCursor = managedQuery(uri, Projection, null, null, null); 
     final int column_index = mCursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
     mCursor.moveToFirst(); 
     return mCursor.getString(column_index); 
    } 
+2

這不是OP正在尋找的答案。嘗試在intent中執行putExtra,然後在'onActivityResult'中執行'getExtra',它返回null。 – atulkhatri

相關問題