这次我主要实现调用照相机并且能够在自己设置Activity
上显示此图片,比且当我们照完图片的时候自己可以对照片进行裁剪。
配置文件没有做出改动关键是我们代码的实现,调用手机自带的照相系统,这个最重要的一点就是Intent
的设置就是下面俩句话:
Intent intent=new
Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 1);
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"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="测试"
android:id="@+id/test"
/>
<ImageView
android:id="@+id/iv01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
></ImageView>
</LinearLayout>
点击测试之后我们进入系统自带的照相机的那个界面,然后根据情况可以裁减界面,裁剪这块是参考别的书籍上所写的:
下面是主代码:
public
class MainActivity
extends Activity {
private
Button button;
private
ImageView imageView;
public
void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.button=(Button)findViewById(R.id.test);
this.imageView=(ImageView)findViewById(R.id.iv01);
button.setOnClickListener(new
OnClickListener()
{
@Override
public
void onClick(View v)
{
//
TODO Auto-generated method stub\
//设置跳动页面
调用系统自带的照相机
Intent intent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
}
});
}
//开始处理相片
前段显示图片在onActivityResult中处理返回的data
@Override
protected
void onActivityResult(int
requestCode, int resultCode, Intent data)
{
//
TODO Auto-generated method stub
if(resultCode!=RESULT_OK)
return;
switch (requestCode)
{
//开始对我们完成的Intent乞求开始做出判断
case 1:
Bitmap bitmap = data.getParcelableExtra("data");
if (bitmap!=null)
{
dealBitmap(bitmap);
}
case 0:
Bitmap bitmap2 = data.getParcelableExtra("data");
if(bitmap2!=null){
//显示在我们的Activity上
imageView.setImageBitmap(bitmap2);
}
break;
}
super.onActivityResult(requestCode, resultCode,
data);
}
//开始对我们照完的照片进行处理
protected
void dealBitmap(Bitmap bitmap){
//调用下面的函数开始对图片进行修改
Intent intent = getDealImageIntent(bitmap);
startActivityForResult(intent, 0);
}
public
static Intent getDealImageIntent(Bitmap bitmap)
{
Intent intent = new Intent("com.android.camera.action.CROP");
//设置裁时的一些参数
intent.setType("image/*");
intent.putExtra("data", bitmap);
intent.putExtra("crop",
"true");
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("outputX", 128);
intent.putExtra("outputY", 128);
intent.putExtra("return-data",
true);
return intent;
}
}
总体来说难度并不是很大但关键是我们调用照相机之后的处理,以及我们对
Intent使用一些技巧!
分享到:
相关推荐
在Android平台上,开发一款照相机应用是相当常见的需求,它涉及到多媒体处理、用户界面设计以及硬件接口调用等多个方面。本资源"android照相机应用源码"提供了一个可以直接运行的Android相机应用示例,这对于初学者...
android 照相机 demo android 照相机 demo android 照相机 demo android 照相机 demo android 照相机 demo android 照相机 demo
在Android 4.0.3(Ice Cream Sandwich)版本中,照相机功能是系统的核心组件之一,对于开发者来说,理解其源码可以帮助我们深入学习Android系统以及如何构建高性能、功能丰富的相机应用。以下是对Android 4.0.3照相机...
在Android平台上,开发一款带有照相功能的应用时,触屏对焦是一项常见的需求。这个"Android照相机触屏对焦例子"将引导我们了解如何实现这一功能。Android提供了丰富的API来支持摄像头操作,包括触屏对焦。我们将深入...
在本篇文章中,我们将探讨如何在 Delphi XE5 中使用 Android 平台的照相机组件,获取拍摄的照片。 使用 Delphi XE5 调用 Android 照相机的步骤 ----------------------------------- 要使用 Delphi XE5 调用 ...
在Android平台上,开发一款带有自动对焦功能的照相机应用是一项常见的需求。自动对焦能够帮助用户在不同的光照条件和拍摄场景下获得清晰的图像。本文将深入探讨如何在Android应用中实现这一功能,主要围绕以下几个...
在Android系统中,照相机功能是用户日常使用的重要部分,深入了解Android照相机的源码有助于开发者优化拍照体验、实现自定义功能或者解决相关问题。本文将深入探讨Android照相机源码,涵盖其核心组件、工作流程以及...
在Android平台上,开发照相机应用是一项常见的任务。本篇文章将深入探讨如何实现在Android中集成照相机功能,包括两种主要方法:直接定义照相机组件和调用系统内置的相机应用。 1. 直接定义照相机组件(Camera API...
本文将深入探讨Android照相机相关的源代码知识,包括基本原理、API使用、真机测试和常见问题。 首先,Android系统的照相机服务通过Camera API暴露给开发者。早期版本的Android(API Level 14以下)使用了Camera类,...
本项目标题为“android照相机相册选择,可以多选”,说明它实现了在Android平台上让用户能够通过自定义的方式,不仅能够使用相机拍摄照片,还能够从相册中选取多张图片,并且具备删除已选择图片的功能。这一特性极大...
在Android开发中,实现“Android 照相机裁切图片”的功能是常见的需求,尤其是在社交应用或者图片处理类应用中。这个功能允许用户拍摄照片后,根据自己的需要选择并调整图片的展示区域,以便精确地选取想要的部分。...
本篇文章将详细探讨Android照相机移动对焦的相关知识点,包括基本概念、API使用、实现流程以及常见问题。 首先,我们需要理解移动对焦的工作原理。在传统的数码相机中,移动对焦通过调整镜头位置来实现。而在智能...
在Android系统中,照相机功能是用户日常使用的重要部分,对于开发者来说,理解其源码有助于定制和优化相机应用。Android 4.0(Ice Cream Sandwich,简称ICS)的相机源码提供了丰富的学习材料,揭示了相机服务如何与...
本文将深入探讨Android照相机开发的相关知识点,包括API的使用、权限管理、相机配置、预览显示、图片捕获以及一些常见问题的解决策略。 1. **Android Camera API** Android提供了多种方式来访问和控制照相机。早期...
在使用Delphi XE5开发Android应用程序时,调用照相机功能是常见的需求,以便让用户拍摄照片并集成到应用中。本示例着重讲解如何在Delphi XE5环境下,利用Android API来实现这一功能,无需额外的组件,只通过原生代码...
在Android应用开发中,调用系统相册和相机功能是常见的需求,这使得用户能够方便地选择或拍摄图片,进一步增强应用的交互性。本文将详细介绍如何在Android中实现这两个功能,并提供相应的源码实例。 首先,我们来看...
在使用Delphi XE6开发Android应用程序时,调用照相机功能是常见的需求,这使得用户可以直接通过应用拍摄照片。本教程将详细讲解如何在Delphi XE6中实现这一功能,无需额外的组件,只需利用系统自带的功能,确保代码...
首先,我们要知道在Android中访问相机通常有两种方式:使用内置的`Camera`类或者使用`CameraX`库。在这个Demo中,它可能使用了较旧的`Camera`类,因为`CameraX`是Google在Android Jetpack库中推出的新一代相机API,...
在Android开发中,图片的获取和照相机的使用是两个重要的功能模块,广泛应用于各种应用程序,如社交网络、相册应用等。以下是对这两个知识点的详细讲解。 首先,我们来看如何在Android中获取本地图片: 1. **...