Android(安卓)调用Camera和相册
16lz
2022-01-23
xml:
<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/button_cameraButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="拍照" /> <Button android:id="@+id/button_photoButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="相册" /> <ImageView android:id="@+id/imageview_preview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:src="@drawable/ic_launcher" /></LinearLayout>
activity:
package com.wj.cameratest;import java.io.File;import android.app.Activity;import android.content.Intent;import android.graphics.drawable.Drawable;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;public class CameraShowActivity extends Activity {private ImageView mImageView;private Button mButtonCamera;private Button mButtonPhoto;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_camera_show);mImageView = (ImageView) this.findViewById(R.id.imageview_preview);mButtonCamera = (Button) this.findViewById(R.id.button_cameraButton);mButtonPhoto = (Button) this.findViewById(R.id.button_photoButton);mButtonCamera.setOnClickListener(new OnClickListener() { //打开Camera@Overridepublic void onClick(View v) {Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");intent.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "camera.jpg")));intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);startActivityForResult(intent, 10);}});mButtonPhoto.setOnClickListener(new OnClickListener() { //获取相册@Overridepublic void onClick(View v) {Intent intent = new Intent(Intent.ACTION_GET_CONTENT);intent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType("image/*");intent.putExtra("crop", "true");intent.putExtra("aspectX",1);intent.putExtra("aspectY",1);intent.putExtra("outputX", 80);intent.putExtra("outputY", 80);intent.putExtra("return-data",true);startActivityForResult(intent, 11);}});}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {if (requestCode == 10 && resultCode == Activity.RESULT_OK) {this.mImageView.setImageDrawable(Drawable.createFromPath(new File(Environment.getExternalStorageDirectory(), "camera.jpg").getAbsolutePath()));System.out.println("data-->"+data);}else if (requestCode == 11 && resultCode ==Activity.RESULT_OK) {System.out.println("data2-->"+data);}}}
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.wj.cameratest" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".CameraShowActivity" android:label="@string/title_activity_camera_show" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
android 调用相册里的图片并返回 2011-05-12 14:04:11| 分类: Android |字号 订阅Intent intent=new Intent(Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("image/*"); intent.putExtra("crop", "true"); intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); intent.putExtra("outputX", 80); intent.putExtra("outputY", 80); intent.putExtra("return-data", true); startActivityForResult(intent, 0); 在原来的Activity中如下获取选到的图片:@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { System.out.println(resultCode); Bitmap cameraBitmap = (Bitmap) data.getExtras().get("data"); super.onActivityResult(requestCode, resultCode, data); }
更多相关文章
- android获取versionName和versionCode
- 获取Android(安卓)Device的信息
- Android手机开发:获取GPS信息
- Android如何从服务器获取图片
- Android:Gallery
- Android读取手机联系人信息
- Android(安卓)--- 图片处理的方法
- android获取手机电量
- android三种载入图片方式