Android studio’da Kamera kullanımındayız. Öncelikle fotoğraf çekmeyi hepimiz seviyoruz. Kameranın ne işlem yaptığını da anlatmayacağım. Hepimiz biliyoruz çünkü.. Kamera işlemi yaparken android tarafında neler yapıyoruz. Hep birlikte gelin bunu inceleyelim.
1 button ve image view ile activity_main dosyamızı oluşturduk.
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" >
<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentRight="true" android:layout_alignParentEnd="true" />
<ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/imageView" android:layout_above="@+id/button" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="108dp" />
</RelativeLayout> |
Java Dosyamız :
Java dosyasında öncelikle resim çekme işlemini aktif ediyoruz. İd ile isteğimizi onaylayıp imageview’e atarak gösterimini sağlıyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
package com.umiitkose.myapplication;
import android.bluetooth.BluetoothAdapter; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; import android.media.MediaRecorder; import android.net.Uri; import android.net.wifi.WifiManager; import android.os.Bundle; import android.app.Activity; import android.provider.MediaStore; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.Toast; import android.widget.ImageView;
public class MainActivity extends Activity {
Button btn;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn=(Button)findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent kamera=new Intent(MediaStore.ACTION_IMAGE_CAPTURE); // Resim çekme isteği ve activity başlatılıp id'si tanımlandı startActivityForResult(kamera,33);
} });
}
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode==33){ Bitmap image=(Bitmap)data.getExtras().get("data");//Çekilen resim id olarak bitmap şeklinde alındı ve imageview'e atandı ImageView resim= (ImageView)findViewById(R.id.imageView); resim.setImageBitmap(image);
}
// super.onActivityResult(requestCode, resultCode, data); } } |
android studio Manifest İçin gerekli izinler..
1 2 3 |
<uses-permission android:name="android.permission.CAMERA"></uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <uses-feature android:name="android.hardware.Camera"></uses-feature> |