精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Android調用Camera實現(xiàn)自定義照相

移動開發(fā) Android
本文介紹了在Android開發(fā)中調用Camera實現(xiàn)自定義照相的具體實現(xiàn)代碼。可以直接加入工程中,希望大家喜歡。

首先是布局文件,線性布局,左邊兩個按鈕垂直擺放,右邊預覽圖以及照相獲取到的圖:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:layout_width="fill_parent" 
  4.     android:layout_height="fill_parent" 
  5.     android:orientation="horizontal" > 
  6.  
  7.     <LinearLayout 
  8.         android:layout_width="200dip" 
  9.         android:layout_height="150dip" 
  10.         android:orientation="vertical" > 
  11.  
  12.         <Button 
  13.             android:id="@+id/btn1" 
  14.             android:layout_width="80dip" 
  15.             android:layout_height="50dip" 
  16.             android:text="Start takPic" /> 
  17.  
  18.         <Button 
  19.             android:id="@+id/btn2" 
  20.             android:layout_width="80dip" 
  21.             android:layout_height="50dip" 
  22.             android:text="Get Pic" /> 
  23.     </LinearLayout> 
  24.  
  25.     <LinearLayout 
  26.         android:id="@+id/cameraView" 
  27.         android:layout_width="200dip" 
  28.         android:layout_height="150dip" 
  29.         android:orientation="vertical" > 
  30.     </LinearLayout> 
  31.  
  32. </LinearLayout> 

代碼,都寫在一起的。包含一個自定義的surfaceView(用于相機的照相預覽).以及activit:

  1. package com.nico; 
  2.  
  3. import java.io.ByteArrayInputStream; 
  4. import java.io.IOException; 
  5.  
  6. import android.app.Activity; 
  7. import android.content.Context; 
  8. import android.graphics.PixelFormat; 
  9. import android.graphics.drawable.BitmapDrawable; 
  10. import android.graphics.drawable.Drawable; 
  11. import android.hardware.Camera; 
  12. import android.os.Bundle; 
  13. import android.os.Environment; 
  14. import android.util.Log; 
  15. import android.view.SurfaceHolder; 
  16. import android.view.SurfaceView; 
  17. import android.view.View; 
  18. import android.view.Window; 
  19. import android.view.WindowManager; 
  20. import android.view.View.OnClickListener; 
  21. import android.widget.Button; 
  22. import android.widget.LinearLayout; 
  23.  
  24. public class Test extends Activity implements OnClickListener { 
  25.     /** Called when the activity is first created. */ 
  26.  
  27.     // camera 類 
  28.     private Camera camera = null
  29.     // 繼承surfaceView的自定義view 用于存放照相的圖片 
  30.     private CameraView cv = null
  31.  
  32.     // 回調用的picture,實現(xiàn)里邊的onPictureTaken方法,其中byte[]數(shù)組即為照相后獲取到的圖片信息 
  33.     private Camera.PictureCallback picture = new Camera.PictureCallback() { 
  34.  
  35.         @Override 
  36.         public void onPictureTaken(byte[] data, Camera camera) { 
  37.             // 主要就是將圖片轉化成drawable,設置為固定區(qū)域的背景(展示圖片),當然也可以直接在布局文件里放一個surfaceView供使用。 
  38.             ByteArrayInputStream bais = new ByteArrayInputStream(data); 
  39.             Drawable d = BitmapDrawable.createFromStream(bais, Environment 
  40.                     .getExternalStorageDirectory().getAbsolutePath() 
  41.                     + "/img.jpeg"); 
  42.             l.setBackgroundDrawable(d); 
  43.             try { 
  44.             } catch (Exception e) { 
  45.                 e.printStackTrace(); 
  46.             } 
  47.         } 
  48.  
  49.     }; 
  50.  
  51.     // 按鈕 布局等定義,不作贅述 
  52.     Button btn1 = null
  53.     Button btn2 = null
  54.     LinearLayout l = null
  55.  
  56.     @Override 
  57.     public void onCreate(Bundle savedInstanceState) { 
  58.         super.onCreate(savedInstanceState); 
  59.  
  60.         requestWindowFeature(Window.FEATURE_NO_TITLE); 
  61.         getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
  62.                 WindowManager.LayoutParams.FLAG_FULLSCREEN); 
  63.         getWindow().setFormat(PixelFormat.TRANSLUCENT); 
  64.         setContentView(R.layout.main); 
  65.  
  66.         l = (LinearLayout) findViewById(R.id.cameraView); 
  67.         btn1 = (Button) findViewById(R.id.btn1); 
  68.         btn2 = (Button) findViewById(R.id.btn2); 
  69.  
  70.         btn1.setOnClickListener(this); 
  71.         btn2.setOnClickListener(this); 
  72.     } 
  73.  
  74.     //主要的surfaceView,負責展示預覽圖片,camera的開關 
  75.     class CameraView extends SurfaceView { 
  76.  
  77.         // 
  78.         private SurfaceHolder holder = null
  79.  
  80.         public CameraView(Context context) { 
  81.             super(context); 
  82.             holder = this.getHolder(); 
  83.  
  84.             holder.addCallback(new SurfaceHolder.Callback() { 
  85.  
  86.                 @Override 
  87.                 public void surfaceChanged(SurfaceHolder holder, int format, 
  88.                         int width, int height) { 
  89.                     Camera.Parameters parameters = camera.getParameters(); 
  90.                     //以下注釋掉的是設置預覽時的圖像以及拍照的一些參數(shù) 
  91.                     // parameters.setPictureFormat(PixelFormat.JPEG); 
  92.                     // parameters.setPreviewSize(parameters.getPictureSize().width, 
  93.                     // parameters.getPictureSize().height); 
  94.                     // parameters.setFocusMode("auto"); 
  95.                     // parameters.setPictureSize(width, height); 
  96.                     camera.setParameters(parameters); 
  97.                     camera.startPreview(); 
  98.                 } 
  99.  
  100.                 @Override 
  101.                 public void surfaceCreated(SurfaceHolder holder) { 
  102.                     camera = Camera.open(); 
  103.  
  104.                     try { 
  105.                         //設置camera預覽的角度,因為默認圖片是傾斜90度的 
  106.                         camera.setDisplayOrientation(90); 
  107.                         //設置holder主要是用于surfaceView的圖片的實時預覽,以及獲取圖片等功能,可以理解為控制camera的操作.. 
  108.                         camera.setPreviewDisplay(holder); 
  109.                     } catch (IOException e) { 
  110.                         camera.release(); 
  111.                         camera = null
  112.                         e.printStackTrace(); 
  113.                     } 
  114.  
  115.                 } 
  116.  
  117.                 @Override 
  118.                 public void surfaceDestroyed(SurfaceHolder holder) { 
  119.                     //顧名思義可以看懂 
  120.                     camera.stopPreview(); 
  121.                     camera.release(); 
  122.                     camera = null
  123.                 } 
  124.             }); 
  125. //          holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); 
  126.         } 
  127.     } 
  128.  
  129.     @Override 
  130.     public void onClick(View v) { 
  131.         if (v == btn1) { 
  132.             l.removeAllViews(); 
  133.             cv = new CameraView(Test.this); 
  134.             LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( 
  135.                     LinearLayout.LayoutParams.FILL_PARENT, 
  136.                     LinearLayout.LayoutParams.FILL_PARENT); 
  137.             l.addView(cv, params); 
  138.         } else if (v == btn2) { 
  139.             camera.takePicture(nullnull, picture); 
  140.         } 
  141.     } 
  142. }
責任編輯:徐川 來源: ITEYE
相關推薦

2021-11-01 17:31:21

Camera2 相機開發(fā)

2016-12-26 15:25:59

Android自定義View

2016-11-16 21:55:55

源碼分析自定義view androi

2010-09-14 16:59:39

SQL自定義函數(shù)

2013-04-01 14:35:10

Android開發(fā)Android自定義x

2014-12-30 11:51:35

ListViewItem View

2013-01-06 10:43:54

Android開發(fā)View特效

2009-09-07 22:00:15

LINQ自定義

2022-05-18 07:44:13

自定義菜單前端

2017-05-19 10:03:31

AndroidBaseAdapter實踐

2016-04-12 10:07:55

AndroidViewList

2017-05-18 12:36:16

android萬能適配器列表視圖

2010-02-07 14:02:16

Android 界面

2018-06-21 14:46:03

Spring Boot異步調用

2015-02-12 15:33:43

微信SDK

2022-04-01 15:59:22

SQLPostgreSQL審計

2015-07-29 10:31:16

Java緩存算法

2022-12-07 08:56:27

SpringMVC核心組件

2023-01-03 07:40:27

自定義滑塊組件

2009-09-03 13:34:03

.NET自定義控件
點贊
收藏

51CTO技術棧公眾號

亚洲一区日韩| 成人黄色毛片| 久久午夜老司机| 国产精品久久久久久久久久99| 一本色道久久88| 亚洲成人黄色| 日本电影亚洲天堂一区| 99精品视频网站| 深爱激情五月婷婷| 免费成人在线观看| 欧美激情视频网| 国产精品高清无码在线观看| 高清一区二区三区av| 亚洲h动漫在线| 亚洲国产精品一区二区第四页av| 国内老熟妇对白hdxxxx| 噜噜噜91成人网| 久久综合电影一区| 亚洲欧洲久久久| 香蕉免费一区二区三区在线观看| 色婷婷精品大视频在线蜜桃视频| 国产激情在线看| 国产粉嫩一区二区三区在线观看 | 91一区二区在线观看| 国产日产久久高清欧美一区| 久久久精品免费看| 欧美激情成人在线| 最近的2019中文字幕免费一页| 亚洲视频在线播放免费| 国产一区二区三区黄网站| 欧美专区日韩专区| 国产免费成人在线| 草草在线观看| 一区二区欧美精品| 正在播放一区二区三区| 国产在线播放av| 91丝袜国产在线播放| 风间由美一区二区三区| 国产免费视频一区二区三区| 日韩精品电影在线| 热门国产精品亚洲第一区在线| 久久久久久久久精| 一区二区三区国产精华| 精品国产视频在线| 国产精品18在线| 成人在线一区| 中文字幕视频一区二区在线有码| 波多野吉衣中文字幕| 欧美绝顶高潮抽搐喷水合集| 亚洲福利视频在线| 午夜不卡久久精品无码免费| av日韩精品| 亚洲第一页在线| 国产成人av无码精品| 欧美黄色网页| 在线观看亚洲a| 日本久久精品一区二区| 国产成人精品一区二区三区免费| 在线观看一区二区精品视频| 亚洲77777| 黄色成人在线观看网站| 91精品欧美一区二区三区综合在| 一级黄色片国产| 久久久久久久久久久久电影| 日韩一本二本av| 亚洲成人精品在线播放| h视频久久久| 亚洲精品国产精品国自产观看浪潮| 又黄又爽的网站| 私拍精品福利视频在线一区| 亚洲人成网站免费播放| 97人妻人人揉人人躁人人| 欧美成人自拍| 欧美国产亚洲精品久久久8v| 日产亚洲一区二区三区| 午夜在线a亚洲v天堂网2018| 国产精品成人免费视频| 无码久久精品国产亚洲av影片| 蜜臀av性久久久久蜜臀av麻豆| 91夜夜未满十八勿入爽爽影院 | 日韩欧美视频一区二区三区四区| 成人三级黄色免费网站| 日韩理论片中文av| 日韩人妻无码精品久久久不卡| 爱看av在线| 欧美性色xo影院| 99国产精品久久久久久| 丁香5月婷婷久久| 亚洲欧美精品在线| 污软件在线观看| 99精品福利视频| 国产精品视频久久久| 国产极品久久久| 久久久国产一区二区三区四区小说 | 精品国产一区一区二区三亚瑟| 日韩中文字幕在线| 日韩av黄色片| 久99久精品视频免费观看| 国产视频不卡| 久久综合之合合综合久久| 午夜精品久久久久久久久久久| 日本人视频jizz页码69| 波多野结衣欧美| 亚洲一级片在线看| 18精品爽视频在线观看| 日本不卡123| dy888夜精品国产专区| www免费网站在线观看| 亚洲大型综合色站| 欧美日韩精品区别| 亚洲老女人视频免费| 欧美成人免费视频| 综合久久中文字幕| 91视频在线观看免费| 今天免费高清在线观看国语| 日韩欧美一区二区三区在线观看 | 国产系列在线观看| 亚洲国产精品麻豆| 97超碰免费在线观看| 精品免费在线| 日本高清不卡在线| 欧美特黄一级视频| 伊人色综合久久天天| 不卡的av中文字幕| 夜色77av精品影院| 国内精品久久久久久久| jizz国产视频| 国产精品盗摄一区二区三区| www.国产区| 色婷婷狠狠五月综合天色拍| 欧美日韩第一页| 国产日韩在线观看一区| 中文字幕在线观看不卡视频| 亚洲高清在线免费观看| 亚洲精品中文字幕99999| 97色在线视频| 日韩一级在线播放| 亚洲一区二区三区中文字幕在线 | 黄色av网站免费| 99re成人精品视频| 精品久久一二三| 激情亚洲另类图片区小说区| 欧美疯狂xxxx大交乱88av| 国产乱码精品一区二区| 亚洲欧美自拍偷拍色图| 成年人三级黄色片| 97精品视频| 成人免费激情视频| 欧美性猛交xxxx乱大交蜜桃| 精品国偷自产在线视频99| 国产一级免费视频| 26uuu国产一区二区三区| 婷婷无套内射影院| 美女福利一区| 91国内在线视频| 熟妇高潮一区二区三区| 性久久久久久久| 日本五十肥熟交尾| 9国产精品视频| 久久久久欧美| 唐人社导航福利精品| 国产亚洲综合久久| 中文字幕在线视频第一页| 国产精品网站在线播放| 日韩 国产 一区| 欧美日韩免费| 久久九九视频| 九七影院97影院理论片久久| 久久精品青青大伊人av| av男人天堂av| 午夜精品在线看| xxxx日本黄色| 激情六月婷婷久久| 亚洲 欧美 综合 另类 中字| 日韩电影不卡一区| 国产精品99蜜臀久久不卡二区| 在线观看免费网站黄| 日韩一级免费观看| 你懂的国产视频| 欧美激情一区二区在线| 奇米777在线视频| 91久久亚洲| 日韩精品国内| 日韩欧美久久| 青青青国产精品一区二区| 午夜激情视频在线| 亚洲精品在线观| 成人公开免费视频| 亚洲免费在线观看| jizz欧美性20| 精品一区二区三区香蕉蜜桃| 成人性生活视频免费看| 人人狠狠综合久久亚洲婷| 99久久综合狠狠综合久久止| 午夜伦理福利在线| 久热在线中文字幕色999舞| 日本高清视频免费观看| 欧美色图在线观看| 久久久久久久99| 中文字幕一区二区三区乱码在线| 美女扒开腿免费视频| 美腿丝袜亚洲综合| 国产精品久久久久久久乖乖| 成人嘿咻视频免费看| 国产精品美女久久久久av福利| 欧美成人精品一区二区男人小说| 九九热这里只有精品免费看| 成人欧美亚洲| 亚洲国产中文字幕久久网| 91丨porny丨在线中文| 狠狠操狠狠色综合网| 99久久婷婷国产综合| 久久久精品欧美丰满| 特黄特色免费视频| 裸体在线国模精品偷拍| 奇米精品一区二区三区| 综合久久婷婷| 伊人久久大香线蕉午夜av| 先锋影音国产精品| 成人免费91在线看| 亚洲毛片在线免费| 国产精品久久久久77777| 国产剧情av在线播放| 色综合久久久888| 久久日韩视频| 色偷偷偷综合中文字幕;dd| 日韩电影免费| 亚洲电影免费观看高清| www.黄色小说.com| 欧美一区二区三区人| 一级特黄aaa大片| 欧美伊人精品成人久久综合97| 日本一级一片免费视频| 亚洲影院理伦片| 欧美精品xxxxx| 亚洲欧美aⅴ...| 亚洲国产123| 最新热久久免费视频| 91视频免费看片| 国产片一区二区| 久久久久亚洲av成人无码电影| 99九九99九九九视频精品| 欧洲成人午夜精品无码区久久| 国产美女一区二区三区| 黄色aaaaaa| 国产一区二区福利视频| 久久精品亚洲天堂| 国内精品国产三级国产a久久| 性刺激的欧美三级视频| 精一区二区三区| caoporm在线视频| 国模少妇一区二区三区 | 日韩精品一级二级| 国产男女在线观看| 久久一本综合频道| 人妻内射一区二区在线视频| 先锋影音久久久| www日韩在线观看| 日韩成人免费电影| 91亚洲免费视频| 国产在线精品免费| 国产精品91av| 99精品久久只有精品| 18禁裸乳无遮挡啪啪无码免费| 久久久青草青青国产亚洲免观| 90岁老太婆乱淫| 国产精品嫩草影院av蜜臀| 三级影片在线观看| 亚洲一区二区av电影| 国产成人无码精品久久久久| 日韩欧美在线免费观看| 在线观看中文字幕码| 欧美一区二区三区思思人| 亚洲免费成人网| 国产视频在线观看一区二区| 第一福利在线| 久久成人精品一区二区三区| 丁香影院在线| 国产成人免费av| 成人精品视频在线观看| 动漫精品视频| 国内精品久久久久久久久电影网| 亚洲午夜精品国产| 欧美日本不卡| 国产精品少妇在线视频| 国产一区二区精品在线观看| 在线黄色免费网站| 国产性做久久久久久| 中文字幕在线观看成人| 欧美日韩一区二区在线| 999精品国产| 日韩精品免费在线| 老司机免费在线视频| 国产91精品久久久久久久| 日韩美香港a一级毛片| 国外成人免费视频| 999久久久免费精品国产| 久久久久久久久久久99| 精品中文av资源站在线观看| 国产高清成人久久| 亚洲少妇中出一区| 无码人妻aⅴ一区二区三区有奶水| 欧美高清一级片在线| 三级在线视频| 欧美激情免费在线| 日本免费在线一区| 欧美日韩精品免费看| 欧美日韩a区| 欧美成人福利在线观看| 92国产精品观看| 欧美成人国产精品高潮| 欧美羞羞免费网站| 天堂影院在线| 欧美日韩国产999| 日本一区二区中文字幕| 欧美日韩精品免费在线观看视频| 激情五月***国产精品| 男生操女生视频在线观看| 久久久久久**毛片大全| 国产污视频在线观看| 91 com成人网| av在线播放免费| 国产成人精品视频| 日韩在线黄色| 日本欧美视频在线观看| 国产麻豆精品视频| 国产一级淫片久久久片a级| 色8久久精品久久久久久蜜| 天堂中文在线资源| 欧美激情久久久久久| 91成人精品在线| 99精品视频网站| 精品在线视频一区| 国产又粗又猛又爽又黄的视频四季 | 韩国视频一区二区| 国产91丝袜美女在线播放| 日韩欧美在线第一页| 五月婷婷六月色| 97视频在线观看免费| 都市激情久久| 99在线免费视频观看| 岛国av在线一区| 久久婷婷一区二区| 精品少妇一区二区三区在线视频| 超碰在线观看免费| 114国产精品久久免费观看| 午夜国产精品视频| 亚洲熟妇一区二区| 一区二区日韩电影| 天天色天天操天天射| 国语自产精品视频在免费| 国产精品成人自拍| 男女激情无遮挡| 91蝌蚪porny| 国产精品第六页| 中文亚洲视频在线| 永久免费观看精品视频| 国产一二三四区在线观看| 国产美女在线观看一区| 久久精品视频8| 亚洲韩国日本中文字幕| 小草在线视频免费播放| 欧美一级爽aaaaa大片| 丝袜亚洲另类丝袜在线| 欧美日韩国产一二三区| 日韩视频免费观看高清在线视频| 丝袜中文在线| 久久av一区二区三区漫画| 日韩国产欧美视频| 黄色香蕉视频在线观看| 日韩视频一区二区在线观看| 国产夫妻在线播放| 日本婷婷久久久久久久久一区二区| 日韩av高清在线观看| 登山的目的在线| 精品人伦一区二区色婷婷| 新版的欧美在线视频| 亚洲国产另类久久久精品极度| 国产一区二区视频在线播放| 福利一区二区三区四区| 亚洲欧美日韩视频一区| 四虎地址8848精品| 久久久亚洲国产精品| 国产欧美一区二区在线| 国产黄色高清视频| 欧洲永久精品大片ww免费漫画| 欧美综合一区| 女性生殖扒开酷刑vk| 91国产视频在线观看| av网站导航在线观看免费| 久久精品中文字幕一区二区三区| 久久机这里只有精品| 久草精品视频在线观看| 中文字幕视频一区二区在线有码| 永久免费精品视频| 日本激情综合网| 精品国产乱码久久久久久婷婷| 欧美精品电影| 久久狠狠久久综合桃花| 国产麻豆一精品一av一免费|