问题标签 [layer-list]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
23011 浏览

android - setBackgroundResource() 丢弃了我的 XML 布局属性

我有一个视图,它用作ListView. View.setBackgroundResource()在我的自定义适配器中,我根据项目在列表中的位置来更改视图的背景。(我对列表中的第一个和最后一个项目有单独的资产。)

这会按预期设置正确的背景图像,但它具有令人讨厌的副作用,即我在视图的 XML 定义中设置的所有填充都被完全忽略了。

(如果我在 XML 中设置背景可绘制对象,并且不要尝试在运行时在适配器中更改它,则填充都可以正常工作。)

如何更改背景图像并保留填充?这是一个错误吗?

编辑似乎其他人在这里发现了同样的问题:改变背景是否也会改变线性布局的填充?

0 投票
1 回答
34168 浏览

android - android、背景、图层列表和可缩放位图项

我有以下可绘制集作为背景:

它显示所有位图(base_bgdecoration1decoration2),但我找不到修改它们大小的方法。我想拥有主要背景,并在其之上根据 dpi 具有不同尺寸的装饰。有没有一种简单的方法可以做到这一点,或者我实际上是否必须为不同的 dpi 设置一堆“装饰”?这不好,我想改用缩放/调整大小选项!

android:width和属性是我想找到的android:height东西,但我知道它不起作用。目前我正在为不同的 DPI 使用不同的版本,但希望它可以更加用户友好。

0 投票
2 回答
3890 浏览

android - 如何将笔划应用于android中的按钮特定侧面

如何将笔划应用于按钮的唯一两侧,即左边框和右边框?在安卓。

我已经应用了以下代码,但它不起作用

0 投票
1 回答
1350 浏览

android - Android 4.2:IllegalstateException:此 LayerDrawable 的一个或多个孩子没有恒定状态

由于我的智能手机上从 Android 4.1 到 4.2 的新更新,我的应用程序在初始化 ViewPager 及其活动时引发异常。

例外:

java.lang.IllegalStateException: 此LayerDrawable 的一个或多个孩子没有恒定状态;这个drawable不能被改变。

堆栈跟踪:

编码:

tab_bg_selector.xml:

tab_pg_pressed.xml

tab_bg_selected.xml

tab_bg_unselected.xml

“tabs_bg”布局存在于我的布局文件夹中,就像 res/drawable/tab_bg_selector.xml 一样。

在 Android 4.1 或更低版本的操作系统上不会发生此异常。这可能是什么,我该如何摆脱它?

0 投票
2 回答
1662 浏览

android - 如何在android中使用findDrawableByLayerId?

我想将 setBounds() 用于图层列表中的特定项目,该项目用作按钮的背景。但我无法让 LayerDrawable 对象调用 findDrawableByLayerId()。

任何人都可以帮助解决这个问题吗?

0 投票
1 回答
1894 浏览

android - 为小部件动态更新图层列表中的 Drawable

在小部件的配置阶段,我想更新作为图层列表一部分的位图。由于 RemoteViews 和 Widgets 的所有限制,我发现自己无法实现这一点。既没有手动创建新的 LayerDrawable,也没有检索和更新 drawable。你有想法吗?

背景:小部件显示照片以及其他一些信息。即使是方形、横向或纵向的,照片也应该有良好的框架和比例。

图层列表:

可绘制的@drawable/photo_border 是一个 9-patch 位图。

布局中的相应部分:

感谢您分享您的想法。

0 投票
2 回答
94689 浏览

android - 了解安卓

我不明白图层列表是如何工作的。我阅读了带有一些示例的官方文档,但它并不像预期的那样对我有用。我想要四个应该用 1dp 填充的正方形,但没有什么是预期的。这是一个放大 500% 的屏幕截图:

我的苏亚雷斯
(错误的颜色无关紧要)
如您所见,尺寸完全错误,并且缺少填充物。我试图设置真正的值,如宽度/高度和右/左/顶部/按钮,以确保 android 得到我想要的点。

这是我的xml:

0 投票
3 回答
5439 浏览

android - 可以在 XML 中创建固定宽度的可绘制对象吗?

我试图简化一些图形,从每个密度需要 9 个补丁,到仅使用 XML 可绘制对象。这是一个相当简单的图形:

9 补丁可绘制

2段:

  • 两个段宽 8dp
  • 顶部为 2dp 高
  • 底部填充视图
  • 右侧填充透明

设置为背景图像时给出此结果:

9-patch 作为列表项示例

看起来这应该很容易重新创建为 XML 可绘制对象,并且可以避免创建 5 个不同的 9-patch 图形。但是,我已经查看了图层列表可绘制对象、插图可绘制对象、剪辑可绘制对象——它们似乎都要求您事先知道视图的大小(例如,要为插入保持 2dp,您需要设置insetRight为视图的宽度 - 2dp)。我也尝试使用shape标签的size标签,但这并没有保持固定的大小,只是固定的比例(所以对于更高的视图,它会按比例缩放)。

我是否忽略了一些简单的事情,或者这是我必须在布局后以编程方式检查的事情?

0 投票
3 回答
8364 浏览

android - Android:如何指定不透明度?

我希望我的 LayerList 的不透明度为 80,所以我写道:

但我得到:

如何指定不透明度?

0 投票
1 回答
8521 浏览

android - 以编程方式创建带圆角的图层列表

我目前正在尝试将以下 XML 转换为以编程方式创建,以便我可以在整个项目中根据需要设置顶角和底角。这是一个简单的图层列表,有两个矩形;一个在另一个之上。我想将其用作几个不同视图的背景,因此结果缩放很重要。

这种方法确实有效,但我需要为每个形状创建一个单独的 XML,具体取决于我想要顶部、底部、两者还是不圆角。

我目前创建相同可绘制对象的尝试只产生了两个矩形,一个在另一个之上。我不知道如何设置矩形的位置。无论形状的边界设置为什么,我都看不到任何可见的变化。任何建议将不胜感激。

...