2011-12-25 28 views
0
package ianco.test.andrei; 

      import java.io.File; 

      import android.app.Activity; 
      import android.content.Intent; 

      import android.net.Uri; 
      import android.os.Bundle; 
      import android.os.Environment; 
      import android.util.Log; 
      import android.view.View; 
       import android.view.View.OnClickListener; 
       import android.widget.Button; 
       import android.widget.EditText; 
      public class BrowsePicture extends Activity { 

//YOU CAN EDIT THIS TO WHATEVER YOU WANT 
private static final int SELECT_PICTURE = 1; 

private String filePath; 


public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    Button sButton = (Button) findViewById(R.id.button1); 
    sButton.setOnClickListener(new OnClickListener() { 

     public void onClick(View arg0) { 
       File dir = new File(Environment.getExternalStorageDirectory().toString() + "/sdcard/yourfolder"); 
       Log.d("File path ", dir.getPath()); 
       String dirPath=dir.getAbsolutePath(); 
       if(dir.exists() && dir.isDirectory()) { 
        Intent intent = new Intent(Intent.ACTION_VIEW); 
        // tells your intent to get the contents 
        // opens the URI for your image directory on your sdcard 
            //its upto you what data you want image or video. 
        intent.setType("image/*"); 
       // intent.setType("video/*"); 
        intent.setData(Uri.fromFile(dir)); 
       // intent.setType("media/*"); 
       // intent. 
        startActivityForResult(intent, 1); 
       } 
       else 
       { 
        showToast("No file exist to show"); 
       } 
} 

//UPDATED 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    if (requestCode == 1) { 
     if (data==null) { 
      showToast("No image selected"); 
      //finish(); 
     } 
     else 
     { 
     Uri selectedImageUri = data.getData(); 

     // String filemanagerstring = selectedImageUri.getPath(); 

     //MEDIA GALLERY 
     String selectedImagePath = getPath(selectedImageUri); 

     if(selectedImagePath!=null) 
     { 
      Intent intent = new Intent(); 
      intent.setAction(Intent.ACTION_VIEW); 
      intent.setData(selectedImageUri); 
      startActivity(intent); 
     } 

     else 
     { 
      showToast("Image path not correct"); 
     } 


    } 
     } 

}上activityresult未定義的類型的對象

在我的代碼

從下面我有一些錯誤:

1. super.onActivityResult(requestCode, resultCode, data); 我得到的方法onActivityResult(INT,INT,意圖)是未定義的對於類型Object 2.方法getPath(Uri)未定義爲新類型View.OnClickListener(){}

回答

2

看起來你需要更加小心你的大括號。你已經在你的setOnClickListener()方法中定義了onActivityResult()。