2016级android在线测试15-图像 camera2
有趣有内涵的文章第一时间送达!
喝酒I创作I分享
生活中总有些东西值得分享
@醉翁猫咪
1. ImageView类用于显示各种图像,例如:图标、图片,下面对于ImageView类加载图片方法的描述错误的是()
http://android.xsoftlab.net/reference/android/widget/ImageView.html
您的回答为:void setImageContentView(int resId):设置ImageView的内容为指定的资源。
()void setImageResource(int resld): 设置Drawanble图像。参数resld表示drawable的标识符。
()void setImageDrawable(Drawable drawable): 设置Drawable图像。
()void setImageURI(Uri uri): 设置指定uri的图像。
()void setImageIcon(Icon icon): 设置图标。
()void setImageBitmap(Bitmap bm): 设置Bitmap图像。
()void setImageContentView(int resld) : 设置ImageView的内容为指定的资源。
2. ImageView类的setScaleType(ImageView.ScaleType scaleType)方法是控制图像如何调整大小或者移动,以适应ImageView的大小。参数scaleType的取值在ImageView.ScaleType中定义的,以下对scaleType定义描述错误的是()
http://android.xsoftlab.net/reference/android/widget/ImageView.html
http://android.xsoftlab.net/reference/android/widget/ImageView.ScaleType.html
您的回答为:MATRIX:把图片扩大或者缩小到ImageView的大小(改变图片的原始比例)。
()FIT_CENTER: 把图片按比例或缩小到ImageView的宽度,居中显示。
()CENTER_CROP: 按统一比例扩大图片的大小居中显示,使得图片的长和宽等于或大于ImageView的长(宽)。
()CENTER: 将图片按原来大小居中显示,不进行缩放。
()FIT_END: 把图片按比例扩大或缩小,使得图片能够放入ImageView, 与ImageView 的下部位置对齐进行显示。
()MATRIX: 把图片扩大或者缩小到 ImageView 的大小(改变图片的原始比例) 。
3. BitmapFacotry类的作用是根据文件、流、字节数据等不同的来源创建Bitmap(BMP)图片。下面哪一个不是BitampFactory类创建Bitmap文件的静态方法()
http://android.xsoftlab.net/reference/android/graphics/BitmapFactory.html
您的回答为:Bitamp decodeSDCard(Resources res,int id):从外部存储SD卡中读取图片文件解码转换为BMP图片。
()Bitmap decodeFile(String pathName, BitmapFactory.Options opts): 根据给出的文件路径,将文件解码成BMP 格式。参数pathName表示完整的文件名。参数opts表示Bitmap的参数设置。
()Bitmap decodeFileDescriptor(FileDescriptor fd): 根据文件描述符,编码转换成Bitmap文件。参数fd 表示包含编码数据的文件描述符。
()Bitmap decodeStream(InputStream is): 从输入流中解码转换为BMP文件。参数is 为用于编码的数据流。
()Bitmap decodeFile(String pathName); 根据给出的文件路径,将文件解码转换成BMP格式。
()Bitmap decodeSDCard(Resources res , int id): 从外部存储SD卡读取图片文件解码转换为BMP图片。
4. ViewAnimator是FrameLayout的子类,其作用是以动画的方式切换FrameLayout容器中的视图。以下关于ViewAnimator类重要方法描述错误的是()
http://android.xsoftlab.net/reference/android/widget/ViewAnimator.html
您的回答为:void removeAllViews():清除参数index所指定的视图
()Animation getInAnimationJ(): 返回用于视图进入屏幕时的动画。
()int getDisplayedChild() : 获取当前显示的子视图索引
()Animation getOutAnimation() : 返回用于视图退出屏幕时的动画
()View getCurrentView(): 获取当前显示的子视图。
()void removeAllViews() : 清除参数index所指定的试图。
5. 下面对于ViewFlipper类描述错误的是()
http://android.xsoftlab.net/reference/android/widget/ViewFlipper.html
您的回答为:ViewFlipper类是个抽象类
()ViewFlipper类继承于FrameLayout, 是一个视图View容器类。
()ViewFlipper 类可以用于实现用于视图页面的切换。
()ViewFlipper 类在Layout里面可以放置多个View
()ViewFlipper 类可以设定时间间隔,视图自动播放
()ViewFlipper类是个抽象类。
6. 以下对ViewFlipper类重要方法描述错误的是()
http://android.xsoftlab.net/reference/android/widget/ViewFlipper.html
您的回答为:void stopFlipping ():开始一次定时,用于在子视图间循环切换。
()boolean isAutoStart(): 如果视图显示到窗口上时会自动调用startFlipping() 方法,则返回true。
()boolean isFlipping() : 如果子视图正在切换,则返回 true。
()void setFlipInterval(int milliseconds): 设置视图间切换的时间间隔。参数milliseconds 表示毫秒数。
()void setAutoStart(boolean autoStart): 设置视图显示到窗口上时是否会自动调用startFlipping() 方法。
()void stopFlipping() : 开始一次定时,用于在子视图间循环切换。
7. Android 5.0(API21)之后,android.hardware.Camera被废弃(简称Camera1),的Camera2主要涉及的API有哪些?
http://android.xsoftlab.net/reference/android/hardware/camera2/package-summary.html
您的回答为:
CameraManager:摄像头管理器。这是一个全新的系统管理器,专门用于检测系统摄像头、打开系统摄像头。除此之外,调用CameraManager的getCameraCharacteristics(String)方法即可获取指定摄像头的相关特性。┋
CameraCharacteristics:摄像头特性。该对象通过CameraManager来获取,用于描述特定摄像头所支持的各种特性。┋
CameraDevice:代表系统摄像头。该类的功能类似于早期的Camera类。┋
CameraCaptureSession:这是一个非常重要的API,当程序需要预览、拍照时,都需要先通过该类的实例创建Session。而且不管预览还是拍照,也都是由该对象的方法进行控制的,其中控制预览的方法为setRepeatingRequest();控制拍照的方法为capture()。┋
为了监听CameraCaptureSession的创建过程,以及监听CameraCaptureSession的拍照过程,Camera v2 API为CameraCaptureSession提供了StateCallback、CaptureCallback等内部类。┋
CameraRequest和CameraRequest.Builder:当程序调用setRepeatingRequest()方法进行预览时,或调用capture()方法进行拍照时,都需要传入CameraRequest参数。CameraRequest代表了一次捕获请求,用于描述捕获图片的各种参数设置,比如对焦模式、曝光模式……总之,程序需要对照片所做的各种控制,都通过CameraRequest参数进行设置。CameraRequest.Builder则负责生成CameraRequest对象。
全选
8. 使用Camera2进行拍照的套路包括哪些步骤?
您的回答为:调用CameraManager的openCamera(String cameraId, CameraDevice.StateCallback callback, Handler handler)方法打开指定摄像头。该方法的第一个参数代表要打开的摄像头ID;第二个参数用于监听摄像头的状态;第三个参数代表执行callback的Handler,如果程序希望直接在当前线程中执行callback,则可将handler参数设为null。┋
当摄像头被打开之后,程序即可获取CameraDevice—即根据摄像头ID获取了指定摄像头设备,然后调用CameraDevice的createCaptureSession(List outputs, CameraCaptureSession. StateCallback callback,Handler handler)方法来创建CameraCaptureSession。该方法的第一个参数是一个List集合,封装了所有需要从该摄像头获取图片的Surface,第二个参数用于监听CameraCaptureSession的创建过程;第三个参数代表执行callback的Handler,如果程序希望直接在当前线程中执行callback,则可将handler参数设为null。┋
不管预览还是拍照,程序都调用CameraDevice的createCaptureRequest(int templateType)方法创建CaptureRequest.Builder,该方法支持TEMPLATE_PREVIEW(预览)、TEMPLATE_RECORD(拍摄视频)、TEMPLATE_STILL_CAPTURE(拍照)等参数。┋
通过第返回的CaptureRequest.Builder设置拍照的各种参数,比如对焦模式、曝光模式等。┋
调用CaptureRequest.Builder的build()方法即可得到CaptureRequest对象,接下来程序可通过CameraCaptureSession的setRepeatingRequest()方法开始预览,或调用capture()方法拍照。
9. The general steps for creating a custom camera interface for your application are as follows.
http://android.xsoftlab.net/guide/topics/media/camera.html
您的回答为:Detect and Access Camera - Create code to check for the existence of cameras and request access.┋
Create a Preview Class - Create a camera preview class that extends SurfaceView and implements the SurfaceHolder interface. This class previews the live images from the camera.┋
Build a Preview Layout - Once you have the camera preview class, create a view layout that incorporates the preview and the user interface controls you want.┋
Setup Listeners for Capture - Connect listeners for your interface controls to start image or video capture in response to user actions, such as pressing a button.┋
Capture and Save Files - Setup the code for capturing pictures or videos and saving the output.┋
Release the Camera - After using the camera, your application must properly release it for use by other applications.
10. Audio capture from the device is a bit more complicated than audio and video playback, but still fairly simple, which order is correct?
1.Set the audio source using MediaRecorder.setAudioSource(). You will probably want to use MediaRecorder.AudioSource.MIC.
2.To stop audio capture, call MediaRecorder.stop().
3.Create a new instance of android.media.MediaRecorder.
4.When you are done with the MediaRecorder instance, call
MediaRecorder.release() on it. Calling MediaRecorder.release() is always recommended to free the resource immediately.
5.Set the audio encoder using MediaRecorder.setAudioEncoder().
6.Set output file name using MediaRecorder.setOutputFile().
7.To start audio capture, call MediaRecorder.start().
8.Set output file format using MediaRecorder.setOutputFormat().
9.Call MediaRecorder.prepare() on the MediaRecorder instance.
http://android.xsoftlab.net/guide/topics/media/audio-capture.html
您的回答为:3-1-8-6-5-9-7-6-4
后续
关注我,每天都有优质技术文章推送。工作,学习累了的时候放松一下自己。
本篇文章同步微信公众号
欢迎大家关注我的微信公众号:「醉翁猫咪」
2016级android在线测试15-图像 camera2的更多相关文章
- 2016年3月15日Android实习日记
1.解决了ScrollView滑动冲突问题. 2.设置好了“查看详解”与“题目编号”的部分. 3.完成了app启动图片的设置,并在启动的过程中开辟新的线程连接服务器并开启监听数据. 别忘了注册启动Ac ...
- Android中解决图像解码导致的OOM问题
Android中解决图像解码导致的OOM问题 原文链接:http://blog.csdn.net/zjl5211314/article/details/7042017
- 2016年12月15日 星期四 --出埃及记 Exodus 21:10
2016年12月15日 星期四 --出埃及记 Exodus 21:10 If he marries another woman, he must not deprive the first one o ...
- 2016年11月15日 星期二 --出埃及记 Exodus 20:6
2016年11月15日 星期二 --出埃及记 Exodus 20:6 but showing love to a thousand of those who love me and keep my c ...
- 2016年10月15日 星期六 --出埃及记 Exodus 18:26
2016年10月15日 星期六 --出埃及记 Exodus 18:26 They served as judges for the people at all times. The difficult ...
- 闽江学院软件学院2016级JAVA构建之法-学生自学兴趣小组招募通知
为提升我2016级学生提升JAVA软件开发学习氛围,鼓励更多同学通过自学.团队学习.在线(社区)学习等方式学习并掌握JAVA课程,尤其是鼓励同学们通过微软中国邹欣老师所倡导的"构建之法&qu ...
- Android资源之图像资源(图层图像资源)
曾经看别人的程序的drawable目录里有xml资源,说实话第一次见到这种xml图像资源时,我真心不知道是干什么的.抽出时间学习了一下图像资源.才了解了这类图像资源的妙用. 以下我来分享一下这部分知识 ...
- 工具推荐:2016年最佳的15款Android黑客工具
黑客技术,曾被认为是专家的专有领域,但随着技术的崛起和移动安全领域的进步,黑客技术已经变得越来越普遍.随着人们越来越依赖于智能手机和其它的便携式设备来完成他们的日常活动,我们有必要了解一些Androi ...
- 2016级移动应用开发在线测试13-Location、Sensor & Network
有趣有内涵的文章第一时间送达! 喝酒I创作I分享 生活中总有些东西值得分享 @醉翁猫咪 1. 充分利用智能手机的GPS定位信息,创造了O2O的商业模式,打通了线上与线下的信息流和商流,极大地推动了移 ...
随机推荐
- 利用jQuery-Word-Export导出word (含ECharts)
写在前面的话:写博客的初衷是想把自己学到的知识总结下来,在写的过程中,相当于又把知识梳理了一遍.我坚信有输入,有输出,技术才会进步.我一般都会自己写一个小demo,测试没有问题,再进行整理. 在实 ...
- python基础知识(二)
python基础知识(二) 字符串格式化 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 print(' %s is boy'%('tom')) ----> ...
- 拓展 - Webrtc 的回声抵消(aec、aecm)算法简介
webrtc 的回声抵消(aec.aecm)算法简介 原文链接:丢失.不好意思 webrtc 的回声抵消(aec.aecm)算法主要包括以下几个重要模块:1.回声时延估计 2.NLMS( ...
- 【GLG Toolkit 行业案例】Baltic Information Systems, Ltd.公司选择使用GLG Toolkit
BIS (Baltic Information Systems, Ltd.)是一家专门为核电厂开发安全和过程监控系统的软件公司. BIS的新产品 BISMARC 是一个通用过程控制和监控的SCADA系 ...
- iOS学习——NSLog输出各种类型
在开发过程中,在调试过程中经常打印不出自己想要的数据格式,还时常报警告,所以整理了一下iOS中用NSLog打印各种数据类型的样式.整型占位符说明 : %d : 十进制整数, 正数无符号, 负数有 “- ...
- let 和 var 定义变量的区别
一.变量提升 var 存在变量提升,而 let 不存在变量提升,所以用 let 定义的变量一定要在声明后再使用,否则会报错. var //var定义的变量存在变量提升,变量会把声明提升到整个作用域的最 ...
- fiddler证书问题
1.清除C:\Users\Administrator\AppData\Roaming\Microsoft\Crypto\RSA 目录下所有文件(首次安装fiddler请忽略) 2.清除电脑上的根证书, ...
- 大数据集群环境搭建之一 Centos基本环境准备
首先需要准备的软件都有:Centos系统.SecureCRT 8.5.VMware Workstation Pro.jdk-8u172-linux-x64.tar.gz基本上这个软件就是今天的战场. ...
- option触发及获取当前选中的option值
#标签 #<select id="city" class="select"> #JavaScript #$("#city").c ...
- golang版本管理工具GO111MODULE
在go1.11版本前,想要对go语言包进行管理,只能依赖第三方库实现,比如Vendor,GoVendor,GoDep,Dep,Glide等等. 1. 开启GO111MODULE 用环境变量 GO111 ...