在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ Android Camera(攝像頭)
Android 應(yīng)用組件
使用布局文件自定義Android組件
Android通知
Android主題示例
Android JetPlayer實(shí)例
Android MediaPlayer(多媒體播放)
Android AbsoluteLayout
Android FrameLayout
Android Gestures/手勢(shì)
Android AutoCompleteTextView(自動(dòng)完成)實(shí)例
Android 資源組織和訪問(wèn)
Android ListView
Android GridView
Android數(shù)據(jù)備份
Android撥打電話
Android發(fā)送短信/SMS
Android ProgressDialog
SimpleCursorAdapter
Android發(fā)送電子郵件
Android Activity
Android TextView
Android事件處理
Android TableLayout
Android加載Spinner
Android內(nèi)容提供者
Android自定義字體
Android Service
Android CheckBox
Android Intent過(guò)濾器
Android LinearLayout
Android登錄實(shí)例
Android RadioButton
Android樣式和主題
Android自定義組件及屬性
Android UI控件
Android Animation(動(dòng)畫(huà))實(shí)例
Android Camera(攝像頭)
Android ToggleButton
Android Clipboard(復(fù)制/剪貼板)
Android音頻捕獲(錄音)
發(fā)布Android應(yīng)用
Android Alertdialog(警告對(duì)話框)
Android圖片效果
Android內(nèi)部存儲(chǔ)
Android基于位置服務(wù)
Android RadioGroup
Android AutoCompleteTextView
Android Bluetooth(藍(lán)牙)實(shí)例
Android RelativeLayout
Android最佳實(shí)踐
Android本地化
Android自定義組件
Android教程
Android 架構(gòu)
Android UI布局
Android Button
Android Hello World示例
Android音頻管理器實(shí)例
ArrayAdapter
Android拖放
Android碎片/片段
Android圖片切換
Android JSON解析器
Android開(kāi)發(fā)環(huán)境搭建
Android Spinner
Android樣式示例
使用活動(dòng)代碼自定義Android組件
Android ImageButton
Android EditText
Android廣播接收器

Android Camera(攝像頭)

通過(guò)以下兩種方式,可以在應(yīng)用程序中使用攝像機(jī)

  1. 使用現(xiàn)有應(yīng)用程序中Android攝像頭應(yīng)用程序

  2. 直接使用應(yīng)用程序提供的Android攝像頭API

使用現(xiàn)有應(yīng)用程序的Android攝像頭應(yīng)用程序

使用 MediaStore.ACTION_IMAGE_CAPTURE 啟動(dòng)安裝在手機(jī)上的攝像頭應(yīng)用程序。它的語(yǔ)法下面給出:

Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

除了以上,也可以通過(guò) MediaStore 提供其它可用的意圖。它們列出如下

Sr.No 意圖類型和說(shuō)明
1 ACTION_IMAGE_CAPTURE_SECURE
它返回照相機(jī)拍攝到的圖像,設(shè)備被固定
2 ACTION_VIDEO_CAPTURE
它調(diào)用已有的視頻應(yīng)用程序在Android中捕獲視頻
3 EXTRA_SCREEN_ORIENTATION
它是用來(lái)在屏幕的方向設(shè)置:垂直或橫向
4 EXTRA_FULL_SCREEN
它被用來(lái)控制ViewImage的用戶接口
5 INTENT_ACTION_VIDEO_CAMERA
這個(gè)意圖是用來(lái)啟動(dòng)攝像機(jī)在視頻模式
6 EXTRA_SIZE_LIMIT
它用于指定的視頻或圖像捕獲尺寸大小限制

現(xiàn)在使用startActivityForResult()函數(shù)推出活動(dòng),并等待它的結(jié)果。它的語(yǔ)法下面給出:

startActivityForResult(intent,0)

這種方法已在活動(dòng) activity 類被定義。從主活動(dòng)調(diào)用它。有在做同樣的工作的活動(dòng)類中定義的方法,但是當(dāng)它不是從活動(dòng)要求,但在其他地方使用。它們被列在下面:

Sr.No 活動(dòng)功能說(shuō)明
1 startActivityForResult(Intent intent, int requestCode, Bundle options)
它開(kāi)始的活動(dòng),但可以利用它選擇額外的包
2 startActivityFromChild(Activity child, Intent intent, int requestCode)
啟動(dòng)活動(dòng)時(shí),活動(dòng)是任何其他活動(dòng)的子活動(dòng)
3 startActivityFromChild(Activity child, Intent intent, int requestCode, Bundle options)
它的工作與上述相同,但它可以在捆綁與它的形狀采取額外的值
4 startActivityFromFragment(Fragment fragment, Intent intent, int requestCode)
它啟動(dòng)的碎片活動(dòng)當(dāng)前所在內(nèi)部
5 startActivityFromFragment(Fragment fragment, Intent intent, int requestCode, Bundle options)
它不僅啟動(dòng)從碎片的活性,但可以采用額外的值

不管用來(lái)啟動(dòng)其活動(dòng)功能,它們都返回結(jié)果。其結(jié)果可以通過(guò)覆蓋 onActivityResult 方法獲得。

例子

這里有一個(gè)例子,說(shuō)明如何啟動(dòng)現(xiàn)有的攝像機(jī)應(yīng)用程序捕獲的圖像和位圖的形式顯示結(jié)果

為了試驗(yàn)這個(gè)例子,需要在支持?jǐn)z像機(jī)的實(shí)際設(shè)備上運(yùn)行此應(yīng)用程序。

Steps 描述
1 使用Eclipse IDE創(chuàng)建Android應(yīng)用程序,并將其命名為Camera。在創(chuàng)建這個(gè)項(xiàng)目,確保目標(biāo)SDK編譯在Android SDK中的最新版本或使用更高級(jí)別的API。
2 修改src/MainActivity.java 文件中添加意圖啟動(dòng)活動(dòng)代碼,由result方法來(lái)接受輸出。
3 修改所需的布局XML文件 res/layout/activity_main.xml 添加GUI組件。在這里,我們只添加ImageView和一個(gè)TextView
4 修改res/values/strings.xml 定義所需的常量值
5 運(yùn)行應(yīng)用程序并選擇運(yùn)行Android設(shè)備,并在其上安裝的應(yīng)用和驗(yàn)證結(jié)果。

以下是修改后的主活動(dòng)文件的內(nèi)容:src/com.yiibai.camera/MainActivity.java.

package com.example.camera;


import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class MainActivity extends Activity {

ImageView imgFavorite;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      imgFavorite = (ImageView)findViewById(R.id.imageView1);
      imgFavorite.setOnClickListener(new OnClickListener() {
         @Override
         public void onClick(View v) {
            open();
         }
      });
   }
   public void open(){
      Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
      startActivityForResult(intent, 0);
   }

   @Override
   protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      // TODO Auto-generated method stub
      super.onActivityResult(requestCode, resultCode, data);
      Bitmap bp = (Bitmap) data.getExtras().get("data");
      imgFavorite.setImageBitmap(bp);
   }
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
      /
上一篇:Android 架構(gòu)下一篇:Android教程