شما این محصولات را انتخاب کرده اید

سبد خرید

دوربین
شناسه پست: 463
بازدید: 738

دوربین

 

روش کار با دوربین در برنامه نویسی اندروید :

حتما تا به حال به خیلی از برنامه ها برخورد کرده اید که در هنگام نصب نیاز به دادن دسترسی هایی است

که از جملهاین دسترسی ها دسترسی به دوربین است مثل برنامه های ویرایش عکس و …

نحوه ی کدنویسی به صورت زیر است:

در این آموزش یک دکمه (Button) و یک ImageView قرار دارد که با کلیک بروی Button دوربین برای شما نمایش پیدا می کند

 

زمانی که عکس گرفته شود توسط bundle دریافت و در ImageView قرار خواهد گرفت.

آموزش دوربین در برنامه نویسی اندروید در برنامه نویسی بسیار مهم است در ادامه با ما همراه باشید.

ابتدای کار باید در layout خود یک Button و ImageView همانند زیر قرار دهید نام فایل برابر با main.xml است.

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<Button
android:id="@+id/btn_camera"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Take image" />

<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />

</LinearLayout>

 

سپس وارد اکتیویتی مربوطه شده در اینجا نام آن برابر با CameraDemoActivity.java است و کدهای زیر را در آن قرار دهید.

 

package ir.Devhelp:

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.provider.MediaStore;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;

public class CameraDemoActivity extends Activity {
protected static final int CAMERA_REQUEST = 1;
ImageView imgView;
Button btnCamera;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imgView = (ImageView) findViewById(R.id.imageView1);
btnCamera = (Button) findViewById(R.id.btn_camera);
btnCamera.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI.toString());
try {
intent.putExtra("return-data", true);
startActivityForResult(intent, CAMERA_REQUEST);

} catch (ActivityNotFoundException e) {
}
}
});
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST) {

Bundle extras = data.getExtras();
if (extras != null) {
Bitmap photo = extras.getParcelable("data");
imgView.setImageBitmap(photo);
}
}

}

}

در بالا وقتی بروی دکمه کلیک می شود Intent مربوط به Camer باز شده سپس شما عکس خود را گرفته و دکمه back را فشار میدهید

در این زمان وارد void ی به نام onActivityResult شده و دیتا (عکس) را با استفاده از Bundle دریافت می کنیم

باید مقدار getParcelable برابر با data باشد آن را تغییر ندهید و در آخر در IamgeView قرار میدهیم.

البته لازم به ذکر است که شما می توانید هم از طریق اینتنت ها و هم از طریق ایجاد دوربین شخصی سازی شده از دوربین در نرم افزار خود استفاده کنید.

نویسنده

کد نویسان جوان
رسالت ما کمک به موفقیت هرچه تمام تر شماست ، کد نویسان جوان

1 × پنج =