我正在研究一些Android的东西,我遇到了图像缩放的奇怪问题。您可以在下图中看到的图像包含:
<ImageView
android:id="@+id/imagePreview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/editor_placeholder"
android:contentDescription="@string/stfu" />
我一直在问自己为什么会出现这些黑色条纹。我可以让它显示没有这些条纹的图像吗?
解决方案:
android:adjustViewBounds="true"
摆脱不必要的条纹。
答案 0 :(得分:2)
当然,你可以通过几种不同的方式做到这一点。如果您希望图像适合并且不关心图像的裁剪,您可以执行以下操作:
<ImageView
android:id="@+id/imagePreview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:src="@drawable/editor_placeholder"
android:contentDescription="@string/stfu" />
ImageView
有各种不同的ImageView.ScaleType:
CENTER - &gt;将图像置于视图中心,但不执行缩放。从XML中,使用以下语法:
android:scaleType="center"
。CENTER_CROP - &gt;均匀缩放图像(保持图像的纵横比),使图像的尺寸(宽度和高度)等于或大于视图的相应尺寸(减去填充)。然后图像在视图中居中。从XML中,使用以下语法:
android:scaleType="centerCrop"
。CENTER_INSIDE - &gt;均匀缩放图像(保持图像的纵横比),使图像的尺寸(宽度和高度)等于或小于视图的相应尺寸(减去填充)。然后图像在视图中居中。从XML中,使用以下语法:
android:scaleType="centerInside"
。FIT_CENTER - &gt;使用CENTER缩放图像。从XML中,使用以下语法:
android:scaleType="fitCenter"
。FIT_END - &gt;使用END缩放图像。从XML中,使用以下语法:
android:scaleType="fitEnd"
。FIT_START - &gt;使用START缩放图像。从XML中,使用以下语法:
android:scaleType="fitStart"
。FIT_XY - &gt;使用FILL缩放图像。从XML中,使用以下语法:
android:scaleType="fitXY"
。FIT_MATRIX - &gt;绘图时使用图像矩阵缩放。可以使用setImageMatrix(Matrix)设置图像矩阵。从XML中,使用以下语法:
android:scaleType="matrix"
。
Here是来自开发者网站的一篇很好的文章,用于帮助进行程序化扩展
答案 1 :(得分:0)
在xml文件的imageview中使用android imageview scale type属性..
hadoop jar /opt/cloudera/parcels/hadoop-streaming.jar \
-D mapred.reduce.tasks=15 -D stream.map.input.field.separator=',' -D stream.map.output.field.separator=',' \
-D mapred.textoutputformat.separator=',' \
-input /user/temp/in/ \
-output /user/temp/out \
-file /app/qa/python/mapper.py \
-mapper mapper.py \
-file /app/qa/python/reducer.py \
-reducer reducer.py
答案 2 :(得分:0)
试试这个
<ImageView
android:id="@+id/imagePreview"
android:layout_width="wrap_content"
android:layout_height="200dp"
android:scaleType="centerCrop"
android:src="@drawable/editor_placeholder"
android:contentDescription="@string/stfu" />