我注意到在一些Android应用程序的res / value文件夹中,存在一个ids.xml文件,其中一些项具有false值 什么虚假的意思? 谁能告诉我,谢谢!
答案 0 :(得分:6)
我相信你在反编译apk文件时会看到这些内容。经过一些反复试验,我发现false
实际上并没有做任何事情。你可以放任何东西而不是布尔值。
那么为什么会出现错误?根据我的实验,如果你在编译我的apk后在你的项目中创建一个文件ids.xml,我会在编译的ids.xml中看到与我在项目ids.xml中看到的完全相同的行。但是,如果我没有将我的id放在ids.xml中并使用@+id/myId
创建它,我将在已编译的ids.xml中看到一个标记,其值为false
。我希望它能回答你的问题
我的ids.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item name="test_id" type="id"/>
<item name="test_id2" type="id">false</item>
<item name="test_id3" type="id">This is a test String</item>
<item name="test_id4" type="id">749274927492</item>
</resources>
在我的布局中
<TextView
android:id="@+id/myId"
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
生成ids.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id" name="test_id" />
<item type="id" name="test_id2">false</item>
<item type="id" name="test_id3">This is a test String</item>
<item type="id" name="test_id4">1950617988</item>
<item type="id" name="myId">false</item>
<item type="id" name="action_bar_activity_content" />
<item type="id" name="action_menu_divider" />
<item type="id" name="action_menu_presenter" />
<item type="id" name="action_bar_root">false</item>
<item type="id" name="action_bar_container">false</item>
<item type="id" name="action_bar">false</item>
<item type="id" name="action_context_bar">false</item>
<item type="id" name="split_action_bar">false</item>
....
</resources>
答案 1 :(得分:4)
你可以参考这个,这里所解释的一切都很精彩:
http://developer.android.com/guide/topics/resources/more-resources.html