我有一个定制的摄像头活动,应该只在纵向模式下拍照,但是在三星设备上,照片总是在我的nexus设备上以横向模式显示,图片在纵向模式下正确显示。下面是我设置相机参数和方向的方法。此初始化预览在SurfaceHolder中调用。回调
表面更改
方法。
/** INITIALIZE THE PREVIEW PARAMTERS */
private void initPreview(int width, int height) {
if ( mCamera != null && previewHolder.getSurface() != null) {
try {
mCamera.setPreviewDisplay( previewHolder );
}
catch (Throwable t) {
Log.e("PreviewDemo-surfaceCallback", "Exception in setPreviewDisplay()", t);
Crouton.makeText( this, t.getMessage(), Style.ALERT ).show();
}
if (!cameraConfigured) {
Camera.Parameters parameters = mCamera.getParameters();
Camera.Size size = getBestPreviewSize(width, height, parameters);
Camera.Size pictureSize = getSmallestPictureSize(parameters);
if (size != null && pictureSize != null) {
parameters.setPreviewSize( size.width, size.height );
parameters.setPictureSize( pictureSize.width, pictureSize.height );
parameters.setPictureFormat( ImageFormat.JPEG);
parameters.set( "orientation", "portrait" );
parameters.setRotation( 90 );
mCamera.setDisplayOrientation( 90 );
mCamera.setParameters( parameters );
cameraConfigured = true;
}
}
}
}
出身背景
三星在这方面有缺陷。你可以试试这个。。。
获取定位,以将照片URL与存在问题的三星隔离开来。。。
public static int getOrientation(Context context, Uri photoUri) {
/* it's on the external media. */
Cursor cursor = context.getContentResolver().query(photoUri,
new String[] { MediaStore.Images.ImageColumns.ORIENTATION }, null, null, null);
if (cursor.getCount() != 1) {
return -1;
}
cursor.moveToFirst();
return cursor.getInt(0);
}
一旦你确定了,做一个位图旋转来纠正三星的问题。。。
if( getOrientation(ctx, photoUrl) == 0 || getOrientation(ctx, photoUrl) == -1){
//not samsung issue so process as normal;
}else{ // bad samsung needs rotation
Bitmap lbit =
BitmapFactory.decodeStream(
getContentResolver().openInputStream(_photo_uri),null,options);
lbit = lbit.copy(Bitmap.Config.ARGB_8888, true);
Matrix matrix = new Matrix();
matrix.postRotate(intReturnFromGetOrientationCall);
lbit = Bitmap.createBitmap(lbit, 0, 0, lbit.getWidth(),
lbit.getHeight(), matrix, true);
Picture.setBmp(lbit);
}
我有一个iPhone应用程序,它使用一个UINavigationController来呈现一个深入的界面:首先是一个视图,然后是另一个视图,最多四层。我希望前三个视图限制为纵向,并且只允许最后一个视图旋转为横向。当从第四个视图返回到第三个视图时,第四个视图是横向的,我希望所有的东西都旋转回纵向。 在iOS5中,我简单地在我的每个视图控制器中定义了以返回YES作为允许的方向。一切都如上所述工作,包括
我的应用程序中有3个媒体查询断点 (最小宽度:1024px)//适用于台式机 (最大宽度:1023px)和(方向:纵向)//用于移动纵向 (最大宽度:1023px)和(方向:横向)//用于移动横向 根据断点,我将更改对应于设备和方向的图像源 对于桌面设备,图像的宽度和高度为346x251。 现在,我需要对移动肖像和风景的图像进行切片。移动肖像和移动景观的理想尺寸是多少
我已经将我的图像文件转换为灰度,然后对其进行模糊处理并使用canny,结果是uint8,但我仍然得到了错误。请帮忙!
我正在使用MPAndroidChart(https://github.com/PhilJay/MPAndroidChart)库来绘制一个简单的折线图,其中我有一条由图标表示的点(值)连接的线。 我正在使用OnChartValueSelectedListener: 但就我而言,无论我在哪里点击,我几乎总是选择ValueSelected而不是Nothingselected。 所以,我点击了一个空白区域
问题内容: 如Google所记录,Gallery类在API级别16中已弃用。不再支持此小部件。其他水平滚动小部件包括支持库中的HorizontalScrollView和ViewPager。因此,我使用ViewPager作为Gallery类的替代方法。 我的目标是最终实现 带有文本描述 的 无限滚动图像ViewPager 。我使用以下代码实现了具有描述每个图像的文本的图像ViewPager,但是
我一直在尝试使用Androidintent和intent来拍照或挑选照片。我遇到的问题是,当我尝试在肖像模式下使用Android photo intent拍照时,它会以横向方式保存。 我正试图从URI字符串中保存正确定向照片的