【问题标题】:How to make full size view when using TextureView in android?在android中使用TextureView时如何制作全尺寸视图?
【发布时间】:2015-06-15 10:03:22
【问题描述】:
我使用最新的 Camera 2 API 开发了一个相机应用程序,相机预览设置为纹理视图,我将宽度和高度都设置为 Match_parent,是否需要设置其他属性?如何设置相机全屏预览??我是初学者,不知道怎么设置,谁能帮忙??
<TextureView
android:id="@+id/texture"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
【问题讨论】:
标签:
android
android-layout
android-camera
android-xml
android-textureview
【解决方案1】:
对该活动使用 NoActionBar 主题。 This 答案可以指导您实现这一目标。
【解决方案2】:
请使用 DisplayMetrics 获得所需的 w/h
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
RelativeLayout preview_video_parent = (RelativeLayout) findViewById(R.id.preview_video_parent);
LayoutParams layoutParams = (LayoutParams) preview_video_parent
.getLayoutParams();
layoutParams.width = displaymetrics.widthPixels;
layoutParams.height = displaymetrics.heightPixels;
mTextureView.setLayoutParams(layoutParams);
【解决方案3】:
也许这对你有用:获取相机尺寸并将它们设置为 texturuView,如下所示:
Camera mCamera = Camera.open();
Camera.Size previewSize = mCamera.getParameters().getPreviewSize();
TextureView myTexture = (TextureView)findViewById(R.id.texture);
myTexture.setLayoutParams(new FrameLayout.LayoutParams(previewSize.width, previewSize.height, Gravity.CENTER));
这里你可以看一个完整的例子http://www.tutorialspoint.com/android/android_textureview.htm