jjzjj

surfaceView

全部标签

android - 将 Camera SurfaceView 旋转为纵向

我查阅了一些关于使用表面View更改相机方向的帖子,但我从以下示例中获取了我的代码:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/CameraPreview.html提供维度的函数看起来像这样......privateSizegetOptimalPreviewSize(Listsizes,intw,inth){finaldoubleASPECT_TOLERANCE=0.1;doubletargetRatio=(double)w/h;if(size

android - 色带仅适用于 Android 4.0+

在运行Android4.0或4.0.3的模拟器上,我看到了可怕的色带,我似乎无法摆脱它。在我测试过的所有其他Android版本上,渐变看起来都很平滑。我有一个配置为RGBX_8888的SurfaceView,并且在渲染的Canvas中不存在strip。如果我在渲染结束时通过叠加噪声模式手动对图像进行抖动,我可以使渐变再次变得平滑,但显然会以牺牲性能为代价,而我宁愿避免这种情况。因此稍后将引入strip。我只能假设,在4.0+上,我的SurfaceView在绘制和显示之间的某个时间点被量化为较低的位深度,并且我可以从屏幕截图中看到渐变一次步进8个值每个channel,建议量化为555(而

android - 如何使 SurfaceView 大于屏幕?

我想为相机预览有效地进行简单的数字变焦,所以我想我只需将SurfaceView的大小调整为大于屏幕即可。其他问题(例如3813049)似乎表明这很容易,所以我在下面创建了示例代码,我希望让我在水平方向上只看到一半的图像(因为SurfaceView是屏幕的两倍宽)和让图像水平只占据屏幕的一半。但是,运行它(当针对我的Thunderbolt和Android2.2.1上的SDK版本4时)导致能够在水平填充屏幕的同时水平地看到整个图像。SurfaceView在垂直方向上表现得像预期的那样(当我使其小于屏幕时),但Android不允许我使SurfaceView大于屏幕。如何实现数码变焦?(不,我

android - 旋转 android VideoView

我的应用程序只提供纵向模式。在纵向Activity中,我有一个全屏VideoView。我想要做的是在横向模式下将VideoView(实际视频、视频缓冲区)旋转90度。使Activity处于横向模式不是一种选择。扩展VideoView和Canvas旋转将不起作用,因为它是SurfaceView而不是实际View。有什么方法可以通过videoView实现吗? 最佳答案 VideoView不支持视频的旋转,即使合成矩阵设置正确并且使用了旋转属性也是如此。您可以做的是使用TextureView并设置其属性rotation="90"(例如)。

android - 以编程方式截取屏幕截图不会捕获 surfaceVIew 的内容

我有一个应用程序,我希望能够捕获屏幕截图。布局的背景是一个显示来自后置摄像头的视频的surfaceView。以下代码能够截取屏幕截图,但surfaceView的内容被保存为黑色。这是代码:btn.setOnClickListener(newOnClickListener(){publicvoidonClick(Viewv){Randomnum=newRandom();intnu=num.nextInt(1000);Bitmapbmp;CamView.setDrawingCacheEnabled(true);CamView.buildDrawingCache(true);Bitmapbm

android - 游戏开发用SurfaceView编程和线程策略

我正在使用SurfaceView和渲染线程来开发基于结构的游戏,例如LunarLander。但是,我遇到了很多问题,在这里我想一一指出来。我希望任何想要开发游戏的人都不需要再与他们斗争。任何对结构有更好想法的人都可以分享他们的经验,因为我对android还是新手并且渴望学习:)[1]不应多次调用函数thread.start()。许多文章提到在创建表面时创建一个线程,以便在Activity暂停后使用该方法再次渲染:publicvoidsurfaceCreated(SurfaceHolderholder){//startthethreadheresothatwedon'tbusy-wait

安卓警告 : CHECK surface infomation creating=false

当我运行我的Android应用程序时,我注意到LogCat窗口中出现以下警告:Tag:SurfaceViewText:CHECKsurfaceinfomationcreating=falseformatChanged=falsesizeChanged=falsevisible=falsevisibleChanged=truesurfaceChanged=truerealSizeChanged=falseredrawNeeded=falseleft=falsetop=false这是什么意思?它似乎不会引起任何问题,但最好去掉警告。 最佳答案

Android面试题知识点积累(二)

一个Bitmap占用内存计算即是通过占用的像素点多少和一个像素点占的字节数。一个像素用一串二进制表示。即是宽高byte数。Bitmap.Config有一个属性决定这个字节数。分别为:一个int值32位,占4个字节,那16位就占2字节,8位占1个字节ALPHA_8图片只有一个alpha透明度值,占8位一个像素1字节ARGB_4444argb各占4位,共16位一个像素2字节RGB_565没有alpha,rgb各占5,6,5位,共16位一个像素2字节ARGB_8888argb各占8位,共32个字节一个像素4字节代码中可以用bitmap.getByteCount()获取当前这个占用的内存大小。jpg为

RE: 从零开始的车载Android HMI(三) - SurfaceView

1.前言从零开始的车载AndroidHMI是一个系列性的文章,目的在于展示一些在Android手机应用开中不常用,但是在车载应用开发中较为常用的一系列AndroidHMI组件,希望能够帮助初入车载应用开发的同学了解车载应用开发过程中常用的各种UI组件。RE:从零开始的车载AndroidHMI(一)-LottieRE:从零开始的车载AndroidHMI(二)-Widget本文参考资料:《Android自定义控件开发入门与实战》-启舰UnderstandingCanvasandSurfaceconceptsSurface|AndroidDevelopers2.SurfaceView简介相信每一个A

Android 音视频开发之基础篇 使用 SurfaceView绘制一张图片

Android音视频开发上一篇文章:使用imageview绘制一张图片任务一SurfaceView绘制一张图片文章目录Android音视频开发前言一、surfaceview是什么?二、实现方法1.配置activity_main.xml2.编写code3.效果显示总结前言提示:SurfaceView:1为什么要用surfaceview?一般UI是在应用程序的主线程中绘制,但是对一些游戏画面,或者摄像头,视频播放等,UI都比较复杂,要求能够进行高效的绘制,这时候就必须要给复杂而高效的UI视图生成一个独立的绘制表面Surface,并且使用独立的线程来绘制这些视图UI,参考:https://jueji