目前分類:照相類(Take Picture) (108)

瀏覽方式: 標題列表 簡短摘要
前言:
我 的android設備是原道N70雙擎pad。 這個平板電腦沒有後置攝像頭,只有前置攝像頭,當我安裝一些程式的時候,會出現「xxxx.apk已經終止」的錯誤,然後程式就會退出。 思前想後,發現一般的應用程式是安裝在手機上的,程式的預設攝像頭是後置攝像頭。 由於我的pad沒有後置攝像頭,所以,調用後置攝像頭就發生失敗! 怎麼解決呢?
解決問題

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

未命名  

程式碼下載


shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

public class ImageUtil {

public static final String TAG = ImageUtil.class.getSimpleName();

/**

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

在surfacechange中執行:

int mDisplayRotation = 0;
int mDisplayOrientation = getWindowManager().getDefaultDisplay().getRotation() * 90;

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

1.自定义一个imageview用来设定surfaceview上的特定区域。

 

public class DrawImageView extends ImageView {

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

方法一:

方法會由Camera直接產生照片回傳給應用程式,但是返回的是壓縮圖片,顯示不清晰

try {

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

Camera拍照:

做觀景窗程式,結果寫好了發現出問題了,預覽的圖像差90度。相關原始程式碼如下:

Camera.Parameters params = camera.getParameters();

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

未命名  

程式碼下載


shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

未命名  

程式碼下載

 

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

package xiaosi.photoLibrary;

 

import android.app.Activity;

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

在iphone手機上用手指拖動圖片移動,這功能很Cool,咱Android也不能含糊,用Gallery類就可以實現這個功能。
今天我就做了個小小的電子相冊:
假設你已經新建好了專案。

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

首先是相冊圖片的獲取:

 

private final String IMAGE_TYPE = "image/*";

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

20130306101905573  

package com.only.android.app;

import java.io.File;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.os.SystemClock;
import android.provider.MediaStore;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import com.only.android.R;

public class CopyOfImageScaleActivity extends Activity implements View.OnClickListener {
        /** Called when the activity is first created. */
        private Button selectImageBtn;
        private ImageView imageView;
        
        private File sdcardTempFile;
        private AlertDialog dialog;
        private int crop = 180;

        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.imagescale);

                selectImageBtn = (Button) findViewById(R.id.selectImageBtn);
                imageView = (ImageView) findViewById(R.id.imageView);

                selectImageBtn.setOnClickListener(this);
                sdcardTempFile = new File("/mnt/sdcard/", "tmp_pic_" + SystemClock.currentThreadTimeMillis() + ".jpg");

        }

        @Override
        public void onClick(View v) {
                if (v == selectImageBtn) {
                        if (dialog == null) {
                                dialog = new AlertDialog.Builder(this).setItems(new String[] { "相机", "相册" }, new DialogInterface.OnClickListener() {
                                        @Override
                                        public void onClick(DialogInterface dialog, int which) {
                                                if (which == 0) {
                                                        Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
                                                        intent.putExtra("output", Uri.fromFile(sdcardTempFile));
                                                        intent.putExtra("crop", "true");
                                                        intent.putExtra("aspectX", 1);// 裁剪框比例
                                                        intent.putExtra("aspectY", 1);
                                                        intent.putExtra("outputX", crop);// 输出图片大小
                                                        intent.putExtra("outputY", crop);
                                                        startActivityForResult(intent, 101);
                                                } else {
                                                        Intent intent = new Intent("android.intent.action.PICK");
                                                        intent.setDataAndType(MediaStore.Images.Media.INTERNAL_CONTENT_URI, "image/*");
                                                        intent.putExtra("output", Uri.fromFile(sdcardTempFile));
                                                        intent.putExtra("crop", "true");
                                                        intent.putExtra("aspectX", 1);// 裁剪框比例
                                                        intent.putExtra("aspectY", 1);
                                                        intent.putExtra("outputX", crop);// 输出图片大小
                                                        intent.putExtra("outputY", crop);
                                                        startActivityForResult(intent, 100);
                                                }
                                        }
                                }).create();
                        }
                        if (!dialog.isShowing()) {
                                dialog.show();
                        }
                }
        }

        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
                if (resultCode == RESULT_OK) {
                        Bitmap bmp = BitmapFactory.decodeFile(sdcardTempFile.getAbsolutePath());
                        imageView.setImageBitmap(bmp);
                }
        }
}

 

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

zoom=0;//   
02.scene-detect-values=off,on; 
03.zoom-supported=true;

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

除了之前
用過的 MediaRecorder 可以使用 Camera 的預覽功能外,也可以直接使用 Camera 來達成相同的功能。

 

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

27DEE371DD10F0AB5D5D42AB6D662E  
呼叫相機的 Intent action為 MediaStore.ACTION_IMAGE_CAPTURE,預設的照片存放位置為相機的預設位置,可以另外加上 MediaStore.EXTRA_OUTPUT 設定自訂的位置。

 

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

1. 在 AndroidManifest.xml 中加上 permission 和 feature



shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

主要針對你的 surfaceView進行修改 :



shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

//設置為橫屏

 

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()

E03ECC61FD96E4B47B2B905D3A343C37FFE23930C1B45FA84A46D5CFD157111808B8379E259DBFF63918A7C7CE  
QuikIMG 下載

 

shadow 發表在 痞客邦 PIXNET 留言(0) 人氣()