Top Ad unit 728 × 90

Çekilen Resmi Arkaplan Olarak Ayarlama (Kamera – 2)

Android programlama makalelerimizde bir önceki uygulamada kamera kullanmayıgöstermiştim. Şimdi ise kamerayla resim çektikten sonra nasıl arkaplan olarak ayarlanacağından bahsedeceğim. isterseniz önceki uygulamadaki kodları hatırlayalım.
kamera2 1024x575 Çekilen Resmi Arkaplan Olarak Ayarlama (Kamera   2)
startActivityForResult metodu için ekrana sağ tıklayıp -> Source -> Override/Implements Methods içerisinden onActivityResult metodunu uygulamamıza eklememiz gerekiyor. Bu işlemi yaptıktan sonra şu kodların uygulaması eklenmiş olması gerekir.
1
2
3
4
5
6
7
8
@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 // TODO Auto-generated method stub
 super.onActivityResult(requestCode, resultCode, data);
 
 }
 
 }
BU metodun içerisine if metodu içerisinde resultkodumuzun doğru döndüğü takdirde yapılacak işlemleri yazmamız gerekiyor.Resmi kullanabilmemiz için ise Bitmap sınıfından yararlanmamız gerekiyor. Yani onActivityResult metodunun son hali aşağıdaki gibi olmalı :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
</pre>
@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 // TODO Auto-generated method stub
 super.onActivityResult(requestCode, resultCode, data);
 
 if(requestCode == RESULT_OK){
 Bundle resim = data.getExtras();
 Bitmap bmp = (Bitmap) resim.get("data");
 iv.setImageBitmap(bmp);
 }
 
 }
<pre>
Result metodu içerisinde bir de bundle oluşturuyoruz. Çünkü android programlamada veri aktarımlar için Bundle lar kullanılır.  Bütün bu işlemlerden sonra artık arkaplan butonumuzun tıklandığında hangi işlemleri yapacağını yazabiliriz. Butona click yazmadan önce resim için izin almamız gerekiyor. Bunun için aşağıdaki kodu manifest dosyamızın içerisine application tag’inin üzerine aşağıdaki kodu yapıştırıyoruz.
1
<uses-permission android:name="android.permission.SET_WALLPAPER"/>
Arkapaln ayarlama butonumuzun click’ine try-catch bloğu içerisinde aşağıdaki kodları ekliyoruz.
1
2
3
4
5
6
try{
 getApplicationContext().setWallpaper(bmp);
 }catch (IOException e) {
 // TODO: handle exception
 e.printStackTrace();
 }
Bu makalede yazdığımız metodları aşağıdaki resimden de bakabilirsiniz :
kamera4 1024x575 Çekilen Resmi Arkaplan Olarak Ayarlama (Kamera   2)
Bütün kodlarımız bu kadar. Yalnız program emülatörde çalışmayacağından dolayı sadece telefonunuzdan deneyebilirsiniz. Uygulamanın bütün kodlarını aşağıya ekliyorum. Bir sorununuz olduğunda yorum kısmında sorabilirsiniz, elimden geldiğince yardımcı olmaya çalışıyorum.
MainActivity.java
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
55
56
57
58
59
60
61
62
63
64
65
66
package com.example.kamera;
 
import java.io.IOException;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
 
public class MainActivity extends Activity implements OnClickListener{
 
Button resimCek , Duvarkagidi;
 ImageView iv;
 final static int kamera = 0;
 Bundle resim;
 Bitmap bmp;
 
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 
 resimCek = (Button)findViewById(R.id.bresimCek);
 resimCek.setOnClickListener(this);
 iv= (ImageView)findViewById(R.id.imageView1);
 
 }
 
@SuppressWarnings("deprecation")
 @Override
 public void onClick(View v) {
 // TODO Auto-generated method stub
 switch (v.getId()) {
 case R.id.bDuvarkagidi:
 try{
 getApplicationContext().setWallpaper(bmp);
 }catch (IOException e) {
 // TODO: handle exception
 e.printStackTrace();
 }
 break;
 case R.id.bresimCek:
 Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
 startActivityForResult(i, kamera);
 
 break;
 }
 
 }
 
@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
 // TODO Auto-generated method stub
 super.onActivityResult(requestCode, resultCode, data);
 
 if(requestCode == RESULT_OK){
 resim = data.getExtras();
 bmp = (Bitmap) resim.get("data");
 iv.setImageBitmap(bmp);
 }
 
 }
}
activity_main.xml
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
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:paddingBottom="@dimen/activity_vertical_margin"
 android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"
 android:paddingTop="@dimen/activity_vertical_margin"
 tools:context=".MainActivity" >
 
<Button
 android:id="@+id/bresimCek"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_alignParentLeft="true"
 android:layout_alignParentTop="true"
 android:text="ResimCek" />
 
<Button
 android:id="@+id/bDuvarkagidi"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:layout_alignLeft="@+id/bresimCek"
 android:layout_below="@+id/bresimCek"
 android:text="DuvarKagidiAyarla" />
 
<ImageView
 android:id="@+id/imageView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_alignLeft="@+id/bDuvarkagidi"
 android:layout_alignParentBottom="true"
 android:layout_alignRight="@+id/bDuvarkagidi"
 android:layout_below="@+id/bDuvarkagidi"
 android:src="@drawable/ic_launcher" />
 
</RelativeLayout>
KodBankasi.Org
Çekilen Resmi Arkaplan Olarak Ayarlama (Kamera – 2) Reviewed by Unknown on 04:00 Rating: 5

Hiç yorum yok:

Tüm hakları saklıdır. Teknoloji Program Güncel Android Webmaster © 2014 - 2015
Powered by Blogger.

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.