在我的Java代碼中,我可以輕鬆訪問標準Android字符串,如「保存」,「確定」,「取消」等。在一個活動中,我可以這樣做,如下所示: getString(android.R.string.cancel)
引用XML中的標準Android字符串
我想從XML文件中訪問這些字符串。我嘗試過像android:text="@android:string/cancel
這樣的東西,但這似乎不起作用。有沒有辦法在XML中使用這些字符串?
在我的Java代碼中,我可以輕鬆訪問標準Android字符串,如「保存」,「確定」,「取消」等。在一個活動中,我可以這樣做,如下所示: getString(android.R.string.cancel)
引用XML中的標準Android字符串
我想從XML文件中訪問這些字符串。我嘗試過像android:text="@android:string/cancel
這樣的東西,但這似乎不起作用。有沒有辦法在XML中使用這些字符串?
嘗試android:text =「@ string/cancel」
我無法重現您的問題。在Android Studio 2.2.2中,我剛剛從新建項目嚮導中創建了一個新項目,選擇「Empty Activity」作爲模板並取消選中appcompat選項。然後,在activity_main.xml
,我改變了TextView
地提及您所需的字符串:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/activity_main"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.commonsware.myapplication.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@android:string/cancel" />
</RelativeLayout>
這乾淨構建並運行在Android 7.1。
由於該字符串自API Level 1以來就在SDK中,因此我不會預期在使用它時會出現任何問題。
「這似乎不起作用」 - 嗯......我希望能夠工作。你有什麼症狀? – CommonsWare
@CommonsWare:Android工作室說'無法解析符號'。它自動完成'android:'部分,但是在編寫'string /'部分時,它不再顯示任何工具提示。 – Marcel50506
使用'@ string/cancel' –