自定义安卓:分隔线,前提是可绘制对象不显示



我试图使自己成为一个使用微调器显示路径的小部件,因此在每个微调器之间,我想要一个/符号.... 由于用户一直在更改路径,因此管理我最初添加的间隔视图很麻烦,我想给分隔符参数一个机会......但似乎我无法让它工作,使用

android:divider="?android:dividerVertical"

我在微调器之间有一条细细的灰色线,但只要我输入

android:divider="@drawable/slash"

什么都没有,我的可绘制对象如下:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<rotate
android:fromDegrees="0"
android:toDegrees="45"
android:pivotX="50%"
android:pivotY="50%" >
<shape
android:shape="line"
android:top="1dip" >
<stroke
android:width="2dip"
android:color="#000000" />
</shape>
</rotate>
</item>
</layer-list>

这是我从堆栈溢出上的另一篇帖子中获取的......

可以肯定的是,我尝试添加可绘制对象作为封装微调器的线性布局的背景,我得到了一条平坦的黑线,所以即使旋转似乎不起作用,至少对于背景,也找到了可绘制对象......

minSdk 设置为 21,所以据我了解,这应该有效吗?

以某种方式解决了它,我很困惑,我从这里的另一篇帖子中获取的斜杠(不幸的是我没有保留链接,我也没有再次找到它:((,所以我认为它应该有效。 我通过 https://developer.android.com/guide/topics/resources/drawable-resource.html 工作 为了让它工作,我不得不添加内部形状

<size  android:width="20dip"
android:height="20dip" />

我宁愿说 2 个 EMS,但我不能用可绘制对象来使用它,所以至少在我的 2 台设备上我测试了它,这 20 个 dip 似乎还可以,我希望它对于其他所有显示器都没问题......我更喜欢与微调器中的字符大小相关联的东西......因此,如果有人知道如何做到这一点...

然后,旋转,没有像上面一样工作,它产生了一条平线,我不得不将角度更改为

android:fromDegrees="-45"
android:toDegrees="-45"

恕我直言,这不合逻辑,也不是原始示例中的内容,也不是 https://developer.android.com/guide/topics/resources/animation-resource.html 暗示的

但截至目前,这个东西看起来并不好,但功能足够,如果有人对如何让它变得漂亮有建议,我愿意接受它;)

最新更新