jwr*_*lub 29 android android-layout eclipse-adt android-library
我一直在尝试创建一个android库项目,虽然构建过程工作正常,但是在使用该库的项目中替换资源时遇到了一些麻烦.
在我的图书馆,我有:
一个library_layout.xml
含有
<TextView
android:id ="@ + id/str_my_string"
android:layout_width ="wrap_content"
android:layout_text ="wrap_content"
>
一个调用的java文件
((的TextView)this.findViewById(R.id.str_my_string))的setText(R.string.my_string).
strings.xml
包含的资源
<string name ="my_string">占位符</ string>
在使用我的库的项目中
strings.xml
包含的资源
<string name ="my_string">实际字符串内容</ string>
我期望的行为是,当我使用库运行项目时,文本视图显示实际字符串内容,但它实际上包含false.
查看使用该库的应用程序,我确实看到两个R
文件,它们都有,并且这两个文件R.string.my_string
都等于相同的数值.
小智 63
我有相同的安排,这对我有用.
该库具有布局/类,其中包含对字符串资源的引用:
<TextView android:id="@+id/studentSinceLabel">
Run Code Online (Sandbox Code Playgroud)
该库在strings.xml中提供了一个默认值:
<string name="studentSinceLabel">Student Since</string>
Run Code Online (Sandbox Code Playgroud)
主应用程序在其strings.xml中具有此值:
<string name="studentSinceLabel">Client Since</string>
Run Code Online (Sandbox Code Playgroud)
当我在主应用程序strings.xml中为这个资源提供一个值时,我看到应用程序运行时的"Client Since",当我从主应用程序strings.xml中删除它时,我看到库中的值,"学生自".
看来这是基于我在这里阅读的预期行为:http: //developer.android.com/tools/sdk/eclipse-adt.html
以上链接的相关报价:
在应用程序和库中都定义了资源ID的情况下,这些工具可确保应用程序中声明的资源获得优先级,并且库项目中的资源不会编译到应用程序.apk中.这使您的应用程序可以灵活地使用或重新定义任何库中定义的任何资源行为或值.
归档时间: |
|
查看次数: |
16345 次 |
最近记录: |