私のimageviewは次のように宣言されています:
<ImageView
android:id="@+id/category_image_top"
android:layout_width="match_parent"
android:layout_height="170dp"
android:maxHeight="170dp"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
android:background="@drawable/image_placeholder"
/>
これが、asynctask(onPostExecute)でcategory_image_topを設定する方法です。
imageView.setImageBitmap(image);
imageを設定すると、imageviewは突然4pxのマージンを取得します。しかし、XMLからandroid:background = "@ drawable / image_placeholder"を削除すると、すべて問題ありませんか?!
ところで:image_placeholderは、これが何か違いを生む場合、9パッチのイメージです。
なぜこれが起こるのか考えはありますか?
更新:背景を単色で配置しようとしましたが、画像を読み込んだときに余白が表示されません。また、別の9パッチ画像を配置しようとしましたが、配置すると余白が再び表示されます。だからそれは画像として背景を持つものでなければなりません
UPDATE2:多分それはこの男が指摘するようなアンドロイドのバグですか?https://stackoverflow.com/a/8340745/581531