【发布时间】:2011-07-06 12:39:50
【问题描述】:
如何创建仅水平缩放的 9Patch 图像?我不希望它垂直缩放。我无法创建这样的 9 PNG。
我尝试了http://radleymarx.com/blog/simple-guide-to-9-patch/ 的文章,但他们的方法不起作用。当我跳过左侧指南时,它会在 Eclipse 中出现错误。
我正在尝试水平缩放此 image,以创建标题栏。
【问题讨论】:
标签: android android-image
如何创建仅水平缩放的 9Patch 图像?我不希望它垂直缩放。我无法创建这样的 9 PNG。
我尝试了http://radleymarx.com/blog/simple-guide-to-9-patch/ 的文章,但他们的方法不起作用。当我跳过左侧指南时,它会在 Eclipse 中出现错误。
我正在尝试水平缩放此 image,以创建标题栏。
【问题讨论】:
标签: android android-image
好吧,您可以将垂直缩放标记为图像的透明部分。可能就在顶部和底部边缘附近。只有那些部分会垂直缩放。其他垂直部分将保持不变。
【讨论】:
您可以尝试使用 tiled drawable 而不是 9patch:
您通过 xml 创建一个新的可绘制对象,使用图像的非 9patch 版本,然后将 tileMode 设置为重复。然后,您可以将这个新的可绘制对象设置为标题的背景,它应该按照您的描述显示。
http://androidblogger.blogspot.com/2009/01/how-to-have-tiled-background-cont.html
【讨论】:
即使这个问题在几年前已经得到解答,我自己也得到了另一个解决方案。 我尝试在垂直 LinearLayout 中放置一些 Textview,它们都具有相同的高度,但高度可变(取决于它们的内容)。
我的解决方案:
android:paddingLeft="60dp"
android:paddingRight="60dp"
(如果你想让你的 Textviews 更苗条,比添加更高的填充值)
在线性布局中: 安卓:paddingLeft="60dp" android:paddingRight="60dp"
并设置其子项(文本视图):
9patch 文件作为背景
android:layout_width="match_parent"
android:layout_height="wrap_content"
【讨论】: