首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >九个可绘制补丁被裁剪

九个可绘制补丁被裁剪
EN

Stack Overflow用户
提问于 2011-04-07 22:28:59
回答 1查看 1.2K关注 0票数 3

我对这个有点迷惑,我有一个9补丁(见附件),它可以在draw9Patch工具中工作,没有坏的补丁,在初始加载应用程序时运行良好。

但在每个屏幕尺寸上,如果我转到另一个活动,然后返回到包含九个可绘制补丁作为背景的按钮的原始屏幕,图像将被裁剪在顶部(看起来就像是在可重复区域中发生的一样)。

我已经检查了布局,修改了任何九个可绘制的补丁,以确保它不是一个流氓的九个补丁,导致其余的问题。我已经确保每个密度像素屏幕都有自己的一组资源,并且我还打算尝试将按钮的xml状态选择器移动到每个相应的可绘制文件夹中。

令人沮丧的是,即使九个补丁绘制不正确,旋转屏幕似乎也能解决问题,只有当我从一个新的活动返回到问题活动时,九个补丁才会截断50%的时间。

可绘制的是:

结果图像的左侧部分如下所示(请注意,没有圆角边缘):

如果您实际放大渲染的图像,它看起来像是九个面片的顶部(在缩放的像素之上)与下面的可绘制重叠(放大,您会看到圆角)。

按钮的布局没有任何不同寻常之处:

代码语言:javascript
复制
<Button
    android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:text="@string/some_text"></Button>

我可以将layout_height设置为固定的高度(即50dp),这似乎可以阻止九个补丁自行折叠/裁剪。

如果有人对这个问题有任何想法,请让我知道。

干杯,马特

解决方案:

我的问题是状态列表选择器中的以下布尔参数:

android:constantSize="true“android:dither="false”android:variablePadding="false“

我不确定是什么导致了这种行为,但我认为它导致了某种形式的缓存或某种优化,从而引入了这种间歇性的bug。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-19 07:25:23

我的问题是状态列表选择器中的以下布尔参数:

代码语言:javascript
复制
android:constantSize="true" 
android:dither="false" 
android:variablePadding="false"

我不确定是什么导致了这种行为,但我认为它导致了某种形式的缓存或某种优化,从而引入了这种间歇性的bug。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5582720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档