2012-11-08 139 views
0

我是Android的新手,並試圖在Android應用程序中包含文件上傳。但我無法找到相關的控制。我想放置一個控件,如this ImageAndroid文件上傳控制

我應該怎麼做才能完成這項任務?

+0

你不能從SD卡或使用相機上傳文件嗎? – juned

回答

1

在Android中上傳文件沒有內置控件。在Java中,我們有一個文件選擇器來瀏覽文件。在android中,您必須執行此操作才能從相機或圖庫中選擇文件。

final String [] items = new String [] {「Take picture」, 「Choose from Gallery」}; ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.select_dialog_item,items); AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setTitle("Select Image"); 
    builder.setIcon(R.drawable.copy_selected); 
    builder.setAdapter(adapter, new DialogInterface.OnClickListener() { 
     public void onClick(DialogInterface dialog, int item) { // pick from 
                   // camera 
      if (item == 0) { 

       imageFilepath = Environment.getExternalStorageDirectory() 
         .getAbsolutePath() + "/tmp_img.jpeg"; 

       Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 

       mImageCaptureUri = Uri.fromFile(new File(Environment 
         .getExternalStorageDirectory().getAbsolutePath(), 
         "/tmp_img.jpeg")); 

       intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, 
         mImageCaptureUri); 

       try { 
        intent.putExtra("return-data", true); 

        startActivityForResult(intent, PICK_FROM_CAMERA); 
       } catch (ActivityNotFoundException e) { 
        e.printStackTrace(); 
       } 
      } else { // pick from file 
       Intent intent = new Intent(); 

       intent.setType("image/*"); 
       intent.setAction(Intent.ACTION_GET_CONTENT); 

       startActivityForResult(Intent.createChooser(intent, 
         "Complete action using"), PICK_FROM_FILE); 
      } 
     } 
    }); 

    final AlertDialog dialog = builder.create(); 

現在在onActivityResult你需要根據你的需要來處理。
謝謝

+0

http://stackoverflow.com/users/1191614/juned謝謝先生 –

+0

如果答案對你有幫助,那麼不要忘記標記爲答案,以便問題可以接近,如果你面臨任何問題,然後做評論。 – juned

+0

如果我遇到任何錯誤,我會通知你 –