Max*_*ime 10 xml android xml-attribute android-widget android-layout
我正在尝试创建一个可以作为jar库轻松添加到android项目的android组件.
为此,我必须在"res/values/attr.xml"中创建新的xml属性,我使用路径添加到我的图形xml元素:
xmlns:app="http://schemas.android.com/apk/res/com.component.mypackage"
Run Code Online (Sandbox Code Playgroud)
然后我将这个项目作为jar库导入另一个项目.要在新项目中创建我的图形组件,我必须更改以下路径:
xmlns:app="http://schemas.android.com/apk/res/com.mylibrary"
Run Code Online (Sandbox Code Playgroud)
但路径不正确:找不到自定义属性.
我设法将R文件集成到库jar中,我可以从我的xml访问它来声明一个自定义组件,如下所示:
<PreferenceScreen
xmlns:android = "http://schemas.android.com/apk/res/android"
xmlns:app = "http://schemas.android.com/apk/res/com.myLibraryPackage">
<com.myLibraryPackage.mySelfComponent
android:title="Name"
android:key="name"
app:hintText="Input your name"
android:dialogTitle="Your name "
app:validator="com.myLibraryPackage.myValidatorClass" />
Run Code Online (Sandbox Code Playgroud)
奇怪的是,如果我将文件attr.xml放在项目的资源中,它就可以工作,这意味着它找到了com.myLibraryPackage.mySelfComponent.在那种情况下,为什么它也找不到com.myLibraryPackage?
(我也试过更换
xmlns:app="http://schemas.android.com/apk/res/com.myLibraryPackage"
Run Code Online (Sandbox Code Playgroud)
通过
xmlns:app="http://schemas.android.com/apk/res/com.myApplicationPackage"
Run Code Online (Sandbox Code Playgroud)
但它仍然无法正常工作)
我宁愿使用jar来促进它在项目中的集成!
有没有人遇到这样的问题谁可以帮助我?
谢谢.
我正在尝试创建一个 android 组件,可以将其作为 jar 库轻松添加到 android 项目中。
如果您想重用代码和资源,则无法使用 jar 文件来实现。您需要将库转换为库项目。
然后我将该项目作为 jar 库导入到另一个项目中。要在新项目中创建图形组件,我必须更改以下路径:
如果您使用的是库项目,您仍然需要引用自定义属性,就好像它包含在应用程序中一样(因为 android 会在编译应用程序时将所有资源合并在一起):
xmlns:app="http://schemas.android.com/apk/res/com.component.mypackage"
Run Code Online (Sandbox Code Playgroud)