我正在忙着创建一个不太复杂的版本,NinePatchDrawable用于平铺内部面板而不是拉伸它们.
我可以实现实际的逻辑来进行渲染等.
但是,我找不到有关如何Drawable在XML文件中使用它的文档.这可能吗?也就是说,我可以用一个<tileable-nine-patch>或者一些这样的标签来定义资源吗?
Cha*_*ley 26
遗憾的是,由于潜在的安全问题,无法在XML文件(针对API 23及更低版本)中使用自定义drawable.请参阅此处,了解有关此主题的Google网上论坛主题,其中包含Android开发人员之一的Romain Guy的回复.
您仍然可以在Java代码中使用它们.
更新:
正如LeoFarage在评论中指出的那样,从API 24开始,您现在可以在XML文件中使用自定义drawable,但仅限于您的应用程序包中.
从 Android API 24 开始,自定义 Drawables 类只能在您的包内的 XML 中使用。
自定义 drawables 类可以通过多种方式在 XML 中使用:
使用完全限定的类名作为 XML 元素名。对于此方法,自定义 drawable 类必须是公共顶级类。
<com.yourapp.MyCustomDrawable
xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#ffff0000"/>
Run Code Online (Sandbox Code Playgroud)
使用 drawable 作为 XML 元素名称并从 class 属性指定完全限定的类名称。此方法可用于公共顶级类和公共静态内部类。
<drawable xmlns:android="http://schemas.android.com/apk/res/android"
class="com.myapp.MyTopLevelClass$InnerCustomDrawable"
android:color="#ffff0000" />
Run Code Online (Sandbox Code Playgroud)
注意:支持库不支持。
| 归档时间: |
|
| 查看次数: |
13009 次 |
| 最近记录: |