Android文件上传控件

时间:2012-11-08 05:19:22

标签: android android-layout

我是android的新手,并试图在Android应用程序中包含一个文件上传器。但我找不到任何相关的控制权。我想放置一个像this Image

这样的控件

我应该怎样做才能完成这项任务?

1 个答案:

答案 0 :(得分:1)

在Android中上传文件没有内置控件。在java中,我们有一个文件选择器来浏览文件。在android中你必须这样做才能从相机或图库中选择一个文件。

final String [] items = new String [] {“拍照”,                 “从画廊中选择”};         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您需要根据需要处理此问题。
谢谢