我正在为我的应用设计一个页面,其中我使用了两个图像和一些垂直文本视图。但是当我使用不同的分辨率在模拟器中启动应用程序时,图像会变形。我使用了9-patch.png,但发现它已经从Android 3.0中弃用了,如果我正在开发2.3及以上的应用程序,我可以使用它吗?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:background="#FFFFFF" android:orientation="horizontal">
<LinearLayout android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="vertical">
<ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:background="@drawable/auto" android:layout_height="wrap_content"></ImageView>
<LinearLayout android:id="@+id/linearLayout3" android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView android:text="Home" android:textColor="#FF0000" android:id="@+id/textView8" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
<TextView android:text=">Products" android:textColor="#FF0000" android:id="@+id/textView7" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
</LinearLayout>
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView3" android:text="Replacement Parts" android:textColor="#000000" ></TextView>
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView2" android:text="Accessories" android:textColor="#000000" android:focusable="true" android:layout_gravity="left" android:cursorVisible="true" ></TextView>
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView6" android:text="Tools Equipment" android:textColor="#000000" ></TextView>
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView4" android:text="Fluids Chemicals" android:textColor="#000000" ></TextView>
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView5" android:text="Performance" android:textColor="#000000" android:onClick="Perform" ></TextView>
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test_9patch_patched" >
</ImageView>
</LinearLayout>
如果除了9-patch.png图片之外还有其他方法,请告知我们。
答案 0 :(得分:1)
我还没有读过在3.0中弃用的9-patch。你能引用消息来源吗?
如果要为不同的屏幕使用不同的图像尺寸,可以按照此列表进行操作 (我认为名称解释了它的用法):
drawable-hdpi
drawable-large-hdpi
drawable-large-ldpi
drawable-large-mdpi
drawable-large-xhdpi
drawable-ldpi
drawable-mdpi
drawable-normal-hdpi
drawable-normal-ldpi
drawable-normal-mdpi
drawable-normal-xhdpi
drawable-small-hdpi
drawable-small-ldpi
drawable-small-mdpi
drawable-small-xhdpi
drawable-v4
drawable-xlarge
drawable-xlarge-hdpi
drawable-xlarge-ldpi
drawable-xlarge-mdpi
drawable-xlarge-xhdpi
布局:
layout
layout-land
layout-land-ldpi
layout-ldpi
layout-xlarge-land-v11
layout-xlarge-v11
...
答案 1 :(得分:0)
您可以使用photoshop或其他图像编辑工具为各种屏幕制作不同像素大小的图像,并将它们放在hdpi,ldpi和mdpi可绘制文件夹中。
系统会根据设备的分辨率自动选择图像。
答案 2 :(得分:0)
如果您的问题是“我可以在2.3及以上版本中使用9个补丁吗?”我会问你“是的,确实,我这样做没有问题”。不幸的是,我不知道它自3.0以来就被弃用了。我喜欢这个功能。