我的布局中有以下两个textView:
<TextView
android:id="@+id/TextView_playSourceWord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_centerHorizontal="true"
android:layout_below="@+id/TextView_playTheme"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_margin="@dimen/word_box_margin"
android:text="Maison" />
<TextView
android:id="@+id/TextView_playTargetWord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_centerHorizontal="true"
android:layout_below="@+id/TextView_playSourceWord"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_margin="@dimen/word_box_margin"
android:text="?" />
第一个没有任何错误,但在第二个android:textAppearance="?android:attr/textAppearanceLarge"
中产生以下错误:
error: Error: Resource id cannot be an empty string (at 'text' with value '?').
我还有其他布局中的其他TextView,textAppearance的值相同,并且没有错误。有没有办法解决这个问题,而无需手动重新创建样式?
答案 0 :(得分:17)
你必须逃脱?编码如下
android:text="\?"
答案 1 :(得分:3)
始终使用本地化字符串:
<TextView
android:id="@+id/TextView_playTargetWord"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_centerHorizontal="true"
android:layout_below="@+id/TextView_playSourceWord"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_margin="@dimen/word_box_margin"
android:text="@string/what" />
的strings.xml
<string name="what">\?</string>
答案 2 :(得分:-1)
我认为这是Android Studio的一个错误。 检查此路径:您的项目文件夹/ app / build,您将在那里找到3个文件夹:“generated”,“intermediates”和“outputs”。您需要做的就是删除这些文件夹中的所有内容并重建您的项目。 / p>