2012-08-26 18 views
4

我如何從android PreferenceScreen菜單中的圖庫中挑選圖像?我PreferenceScreen菜單android在PreferenceScreen中從圖庫中選取圖像?

XML代碼:

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
    <Preference 
     android:key="select_image" 
     android:title="select image"> 
</PreferenceScreen> 

回答

10

我終於找到了答案

第一套setOnPreferenceClickListener

Preference prefereces=findPreference("test"); 
     prefereces.setOnPreferenceClickListener (new Preference.OnPreferenceClickListener(){ 
      public boolean onPreferenceClick(Preference preference){ 
       Intent intent = new Intent(); 
       intent.setType("image/*"); 
       intent.setAction(Intent.ACTION_GET_CONTENT); 
       int PICK_IMAGE = 1; 
       startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE); 
       return true; 
      } 
     }); 

比讓它進入onActivityResult

protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) { 
     super.onActivityResult(requestCode, resultCode, imageReturnedIntent); 

      if(resultCode == RESULT_OK){ 
       Uri selectedImage = imageReturnedIntent.getData(); 
       String[] filePathColumn = {MediaStore.Images.Media.DATA}; 

       Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null); 
       cursor.moveToFirst(); 

       int columnIndex = cursor.getColumnIndex(filePathColumn[0]); 
       String filePath = cursor.getString(columnIndex); 
       cursor.close(); 


       Log.d(LOG_TAG, "Data Recieved! " + filePath); 

     } 
+0

HT tp://stackoverflow.com/questions/37655841/pick-mp3-file-from-sdcard-in-preferencescreen ..你可以幫我..我有一個類似的問題, –