我在一个框架布局的屏幕右侧有一个Imageview。我有9个修补图像。当放置图像时,我看到在不同密度的同一设备中看到图像内部图像位置的变化。应该做些什么来避免同样的事情?
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:orientation="vertical" >
<ImageView
android:id="@+id/characterimageView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:adjustViewBounds="true"
android:background="@android:color/transparent"
android:contentDescription="@string/characterimageview"
android:visibility="visible" />
</FrameLayout>
答案 0 :(得分:0)
您可以将android:layout_width
,android:layout_height
和定位属性(边距,填充等)设置为dp
(密度无关像素)单位的固定值。您定义的大小和位置在每个屏幕上看起来都一样。
像这样的东西,例如:
<FrameLayout
android:layout_width="50dp" // notice the change here
android:layout_height="50dp" // and here
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:orientation="vertical" >
<ImageView
android:id="@+id/characterimageView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:adjustViewBounds="true"
android:background="@android:color/transparent"
android:contentDescription="@string/characterimageview"
android:visibility="visible" />
</FrameLayout>
应该有用......