2016-06-14 10 views
0

Androidのデバイスにカメラを起動するコードがあります。ユーザーが望むように画像を切り抜ける機能を追加します。1つのアクティビティで画像を取り込んだ後に画像を切り抜く方法

public class MainActivity extends AppCompatActivity { 

private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100; 
private Uri fileUri; 

static final int REQUEST_IMAGE_CAPTURE = 1; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    //Creating the onClick Listener for the Scan Button 
    Button scanButton = (Button) findViewById(R.id.ScanButton); 

    scanButton.setOnClickListener(new View.OnClickListener(){ 

     @Override 
     public void onClick(View v){ 

      //Creating an Intent to take a picture and return control to the calling application. 
      Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 

      //Launching the intent. 
      startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE); 
     } 
    }); 



} 

}

+0

githubでこのサンプルコードを試してみてください.......... https://github.com/IsseiAoki/SimpleCropView –

+0

@WaqarYounis私はそれを使用する方法の例を教えていただけますか? – JosephM

+0

githubからコードをダウンロードして実行してください。 –

答えて

0

あなたは写真を撮影し、別のIntent同じ方法を使用します。

Intent crop = new Intent("com.android.camera.action.CROP"); 
crop.setDataAndType(URI_OF_PIC_FROM_LAST_INTENT, "image/*"); 
crop.putExtra("crop", "true"); 
... 
startActivityForResult(crop, REQUEST_CROP); 

独自の値を持つURI_OF_PIC_FROM_LAST_INTENTREQUEST_CROPを交換してください。

Here's an example with more detail.

あなたにも意図を通じてアスペクト比などのようなものを指定することができます。

+0

これらのパラメータの中にはどのような値が入りますか? – JosephM

+0

@JosephM 'URI_OF_PIC_FROM_LAST_INTENT'は、' ACTION_IMAGE_CAPTURE' 'Intent'のあなたの活動結果からの画像のUriでなければなりません。イメージキャプチャのための 'onActivityResult()'メソッドには、返された 'Intent'があるはずです。 'getData()'を呼び出して 'Uri'を取得することができます。それが画像そのものか「ウリ」かどうかを確認する必要があります。 'REQUEST_CROP'は' static final int REQUEST_IMAGE_CAPTURE = 1; 'と同じようにアクティビティーの' static final int'コードですが、明らかに異なる番号を持ちます。投稿したリンクを読んだことはありますか?それはステップガイドによる完全なステップを持っています... – omkarmoghe

+0

はい私はガイドを読んで、それに続きます。私は、しかし、作物ツールは正方形であり、ユーザーが四角形を作ることを許可していないことに気づいた。これは私がコード化するために必要なものですか? – JosephM

関連する問題