Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 跨Android应用程序使用的自定义视图和属性_Java_Android_Svn_Android Custom View - Fatal编程技术网

Java 跨Android应用程序使用的自定义视图和属性

Java 跨Android应用程序使用的自定义视图和属性,java,android,svn,android-custom-view,Java,Android,Svn,Android Custom View,我现在已经开发了几个Android应用程序,并创建了一个我经常在多个应用程序中使用的类的代码库。这些代码都在subversion svn存储库中,每个应用程序都在自己的存储库中。然后,每个应用程序都有所需软件包的svn:externals引用,例如com.company.android.views。除了必须为自定义属性导入R类的情况外,这非常有效 自定义视图具有如下导入: import com.company.apps.myapp.R attributes.getBoolean(R.style

我现在已经开发了几个Android应用程序,并创建了一个我经常在多个应用程序中使用的类的代码库。这些代码都在subversion svn存储库中,每个应用程序都在自己的存储库中。然后,每个应用程序都有所需软件包的svn:externals引用,例如com.company.android.views。除了必须为自定义属性导入R类的情况外,这非常有效

自定义视图具有如下导入:

import com.company.apps.myapp.R
attributes.getBoolean(R.styleable.WebImageView_autoload, autoload)
这样它就可以有如下代码:

import com.company.apps.myapp.R
attributes.getBoolean(R.styleable.WebImageView_autoload, autoload)
该自定义属性在res/values/attrs.xml中定义:

<declare-styleable name="WebImageView">
    <attr name="autoload" format="boolean" />
    ...others
</declare-styleable>
然后循环遍历字段,将我关心的字段分配给整个类中使用的变量。但这似乎相当繁重,特别是当我们可以讨论几个需要这样做的类时


我如何解决这个问题?有没有办法动态导入com.company.apps.*.R或以某种方式生成不依赖于特定应用程序的不同R类?还是有其他明显或不太明显的解决方案我完全错过了?

花了我一段时间,但我找到了一个很好的答案:

从结构上讲,库项目类似于标准的Android应用程序项目。例如,它在项目根目录中包含一个清单文件,以及src/、res/和类似目录。该项目可以包含与标准Android项目相同类型的源代码和资源,并以相同的方式存储。例如,库项目中的源代码可以通过其R类访问自己的资源


花了我一段时间,但我找到了一个好答案:

从结构上讲,库项目类似于标准的Android应用程序项目。例如,它在项目根目录中包含一个清单文件,以及src/、res/和类似目录。该项目可以包含与标准Android项目相同类型的源代码和资源,并以相同的方式存储。例如,库项目中的源代码可以通过其R类访问自己的资源


您好,您是否对库项目中的自定义属性执行了任何特殊操作?当我尝试时,只有当库和最终应用程序使用相同的名称空间时,它才能成功编译。如果我想让两个应用程序使用相同的库(例如:免费和付费版本),那么这就不太好了。嗨,你有没有为自定义属性做过任何特殊的工作来在你的库项目中工作?当我尝试时,只有当库和最终应用程序使用相同的名称空间时,它才能成功编译。如果我想让两个应用程序使用同一个库(例如:免费和付费版本),那么这就不能很好地工作