2016-09-07 3 views
-3

私は彼がイメージを共有する人を選択した第二の活動で、(彼はImageViewの中で絵を見ることができる)、ユーザが写真を撮る最初のアクティビティでいる写真アプリを作っています、そして第三の活動では、彼がすべき別のImageViewで画像をもう一度見ることができます。私はビットマップをあるアクティビティから次のアクティビティにインテントで移動する方法を知っていますが、それを私のユーザーパスの3番目のアクティビティに送信する方法はありますか?私startActivity(意図)した場合、それは私の第二の活動をスキップすると私は第三活動が私に空のImageViewのを示します。..誰かが私に自動的に(ユーザーの操作なし)をロードする方法の方法を伝えるに私を助けてくださいすることができ、それを入れて、ドント場合第1、第3の活動のこの写真といくつかの例?アンドロイドで複数のアクティビティを通じてカメラで撮影したビットマップの使い方は?

私はすでにBase64に変換して再度読み込む方法についての記事を読んでいますが、それらの例ではすでに電話機のメモリにある画像を使用しています。私の場合、ユーザーが撮影した画像です。イメージファイルの名前を知っているドント...

がたくさんありがとうございました!

+0

これは本当ですか?最初のアクティビティは2番目のアクティビティを開始し、2番目のアクティビティは3番目のアクティビティを開始します。 これはあなたのシナリオですか? –

+0

はい、最初のものはカメラの意図を作成し、ユーザーは写真を撮ってImageViewに戻し、2つ目はShareウィンドウのアクティビティです。その後、ユーザーは3番目のImageViewに行きます彼が再び撮った絵。第三の活動に画像を渡す方法がわからない... – Juanalverto

答えて

0

等が外部または内部ストレージにフォルダを作るあなた、カスタマーキャッチフォルダに

をこのイメージの追加

その後

保存Iそのフォルダ内のカメラでキャプチャします魔道士..その後

public static void SaveImagecatch(Bitmap finalBitmap) throws IOException { 

    File Folder = new File(Environment.getExternalStorageDirectory() + "/data/Catch"); 
    if (Folder.mkdir()) { 
     nomediaFile = new File(Environment.getExternalStorageDirectory() + "/data/Catch/" + NOMEDIA); 
     if (!nomediaFile.exists()) { 
      nomediaFile.createNewFile(); 
     } 
    } 
    String root = Environment.getExternalStorageDirectory().toString(); 
    File myDir = new File(root + "/data/Catch"); 
    myDir.mkdirs(); 
    Random generator = new Random(); 
    int n = 10000; 
    n = generator.nextInt(n); 
    String fname = "Image-" + n + ".jpg"; 
    File file = new File(myDir, fname); 
    Catch_uri = Uri.parse("file://" + myDir + "/" + fname); 
    if (file.exists()) file.delete(); 
    try { 
     FileOutputStream out = new FileOutputStream(file); 
     finalBitmap.compress(Bitmap.CompressFormat.JPEG, 100, out); 
     out.flush(); 
     out.close(); 
     Log.e("yes", "yes"); 
    } catch (Exception e) { 
     e.printStackTrace(); 
     Log.e("no", "no"); 
    } 
} 

...保存した画像のURIパスからイメージを取得します。

これは私のために働いている
Uri imageUri = Catch_uri; 
Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(),imageUri); 
Imageview my_img_view = (Imageview) findViewById (R.id.my_img_view); 
my_img_view.setImageBitmap(bitmap); 

..私はこれがあなたに参考になっことを願っています

0

実際に第二の活動に、あなたが最初のアクティビティからテントを取得し、あなたの仕事をして、新しいインテントを作成し、そこに自分の画像を配置する必要があり、最終的には新たな意図を用いた第3の活動を開始。第二活性における

第三活動の
Intent firstToSecodeIntent = getIntent(); 
// some codes 
Intent secondToThirdIntent = new Intent(this, ThirdActivity.class); 
Intent.putExtra("image", /*your Image object*/); 
startActivity(secondToThirdIntent); 

Intent secondToThirdIntent = getIntent(); 
// get your image and set it into your imageView 
+0

は、その後にそれを設定し、第三活性がヌルに等しくないビットマップをチェックし、あなたが第三アクティビティビットマップを埋めることができます第三活動にとウル現在の活動から静的ビットマップフィールドを作ります第3の感受性 –

関連する問題