2013-10-01 36 views
1

我在使用我的控件之一中使用可見性時遇到問題。Android:無法在xml佈局文件中使用可見性

我可以在xml文件中設置控件,並且它可以正常工作。但如果我有一個值爲visibility = gone的string.xml,並將該值傳遞給佈局文件中的按鈕標記,例如。由於此例外情況,它將強制關閉。

10-01 01:23:42.950: E/AndroidRuntime(914): Caused by: java.lang.NumberFormatException: Invalid int: "gone" 
10-01 01:23:42.950: E/AndroidRuntime(914): at java.lang.Integer.invalidInt(Integer.java:138) 
10-01 01:23:42.950: E/AndroidRuntime(914): at java.lang.Integer.parse(Integer.java:375) 
10-01 01:23:42.950: E/AndroidRuntime(914): at java.lang.Integer.parseInt(Integer.java:366) 
10-01 01:23:42.950: E/AndroidRuntime(914): at com.android.internal.util.XmlUtils.convertValueToInt(XmlUtils.java:123) 
10-01 01:23:42.950: E/AndroidRuntime(914): at android.content.res.TypedArray.getInt(TypedArray.java:254) 
10-01 01:23:42.950: E/AndroidRuntime(914): at android.view.View.<init>(View.java:3451) 
10-01 01:23:42.950: E/AndroidRuntime(914): at android.widget.TextView.<init>(TextView.java:447) 
10-01 01:23:42.950: E/AndroidRuntime(914): at android.widget.TextView.<init>(TextView.java:442) 
+0

請發表您的佈局?你爲什麼試圖以這種方式使用string.xml? – Szymon

回答

1

View | Android Developers,能見度竟然接受int值,而不是String。 XML中的值gone是映射到整數的常量,而不是String。解決方案是直接鍵入android:visibility="gone"而不使用字符串資源。

1

如您所知,View有3種屬性,所有這些引用映射爲一個整數值。 如下所示。

  1. 可見-0
  2. 無形-1
  3. 了-2

這不是一個字符串。這就是你面臨這個問題的原因。

爲了解決這個問題,你可以使用的XML整數或程序可以使用 view.setVisibility(View.GONE);

希望這將幫助你..

相關問題