gpt4 book ai didi

android - 如何将 null 指定为 Android 的 XML 属性?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:21:17 25 4
gpt4 key购买 nike

如果我想在那里放置一个空值,我需要为属性放置什么?

比如这段代码:

<?xml version="1.0" encoding="utf-8"?>
<transition xmlns:android="http://schemas.android.com/apk/res/android" >

<item android:drawable="@drawable/ef_gradient_blue" />
<item android:drawable="@null" />

</transition>

但这行不通,因为我的应用程序在尝试加载此可绘制对象时崩溃了。我需要它为 null,以便它可以从完全不透明过渡到完全透明。

在我的 Java 中,我这样加载它:

mTransitionBlue = (TransitionDrawable)mProjectResources.getDrawable(R.drawable.transition_blue);

但是我从中得到一个运行时异常,说它找不到 transition_blue.xml,这是之前指定的 XML。那么我该如何实现呢?

最佳答案

你应该在那里使用一个透明的可绘制对象(android lib 已经预定义了它):

<transition xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/ef_gradient_blue" />
<item android:drawable="@android:color/transparent" />
</transition>

@android:color/transparent 的值为#00000000。前两位数字为 0 很重要,因为它们定义了颜色的 alpha 值(其余为红色、绿色和蓝色)。
所以你可以使用

<item android:drawable="#00000000" />

同样如此,或者在您的颜色中重新定义它。

作为引用,您可以查看 Android Developers 2D GraphicsTransition Drawables文章。

关于android - 如何将 null 指定为 Android 的 XML 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6042395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com