Android İçin El Feneri Yapma

- Ziya Erkoç
- 14.258
- Başlangıç
Bu derste Android platformu için el feneri uygulaması hazırlamayı göreceğiz.
Bu derste Android platformu için el feneri uygulaması hazırlamayı göreceğiz.
Projeye, belirtilen importlar yapılmalıdır.
import android.R.layout;
import android.graphics.drawable.Drawable;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.Toast;
onCreate metodunda fenerin durumuna göre butonun yapacağı iş belirlenir, yani fener kapalıyken butona tıklandığı zaman fener açılır, fener açıkken tıklandığı zaman fener kapanır.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
light.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(a==0){
isikac();
}
else if(a==1){
isikkapat();
}
}
});
}
Feneri açmak ve kapatmak için isikac() ve isikkapat() metotları tanımlanır. Gerekli değişkenler atanır.
int a=0;
Camera cam = null;
public void isikkapat() {
try {
sescal();
if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
cam.stopPreview();
cam.release();
cam = null;
a = 0;
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText("Işığı kapatırken problem oluştu", Toast.LENGTH_SHORT).show();
}
}
public void isikac() {
ImageView arka = (ImageView)findViewById(R.id.imageView2);
try {
arka.setImageResource(R.raw.shine);
sescal();
if (getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
cam = Camera.open();
cam.cancelAutoFocus();
Parameters p = cam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(p);
cam.startPreview();
a=1;
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText("Işığı açarken problem oluştu.", Toast.LENGTH_SHORT).show();
}
}
Yorum yazabilmek için üye girişi yapmanız gerekiyor!