0

私はAndroidの初心者であり、Androidアプリケーションにファイルアップローダーを含めようとしています。しかし、それに関連するコントロールは見つかりません。この画像のようなコントロールを配置したい

このタスクを達成するにはどうすればよいですか?

4

1 に答える 1

1

Androidにファイルをアップロードするための組み込みのコントロールはありません。Javaでは、ファイルを参照するためのファイルチューザーがあります。Androidでは、カメラまたはギャラリーからファイルを選択するためにこれを行う必要があります。

final String [] items = new String [] {"写真を撮る"、"ギャラリーから選択"}; ArrayAdapterアダプター=newArrayAdapter(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あなたはあなたの必要に応じてこれを処理する必要があります。
ありがとう

于 2012-11-08T05:37:22.683 に答える