【问题标题】:Image not displaying as defined in XML ImageView图像未按 XML ImageView 中的定义显示
【发布时间】:2012-12-12 03:48:56
【问题描述】:

我是安卓新手。我可以从手机中检索图像。但是,我没有得到 xml 文件中定义的所需高度和宽度。图像仍然显示为矩形而不是正方形(它只是我原始照片的按比例缩小。但是,我只需要图像的正方形裁剪(图像的一部分没有缩放)。

XML 文件(图像视图):

<ImageView 
    android:id="@+id/photo"
    android:layout_width="=100dp"
    android:layout_height="100dp" 
    android:scaleType="center"
    android:adjustViewBounds="false" 
    android:gravity="center"/>

代码:

public View getView(final int position, View convertView, ViewGroup parent) {
    ViewHolder holder;
    if (convertView == null) {
        convertView = l_Inflater.inflate(R.layout.item_view, null);
        holder = new ViewHolder();
        holder.itemImage = (ImageView) convertView.findViewById(R.id.photo);
        convertView.setTag(holder);
    } else {
        holder = (ViewHolder) convertView.getTag();
    }
    Uri fileURI = Uri.parse(itemArrayList.get(position).getPhoto());
    holder.itemImage.setImageURI(fileURI);
    return convertView;
}

【问题讨论】:

标签: android android-layout android-intent android-emulator android-widget


【解决方案1】:

您已将 ImageView layout_width 和 layout_height 设置为 dp 而不是像素。所以在 hdpi 设备上 100dp 实际上是 150px 和 200 在 xhdpi 上。这可能是您的问题的原因。您可以以 px 为单位设置宽度和高度,并将图像放在 drawable-nodpi 文件夹中(不执行缩放)。 您也可以使用createBitmap (Bitmap source, int x, int y, int width, int height) 方法来获取您想要的图像的一部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-12
    • 2015-11-09
    • 1970-01-01
    • 2016-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多