2017-07-26 83 views
2

我試圖在我的其他項目與晶圓廠實施浮動動作按鈕,並定製它,它工作正常。但是這一次,當我在我的xml佈局中創建fab對象時,它顯示錯誤。感覺困惑,它試圖刪除它的一些標籤,並發現給android:backgroundTint標籤是當錯誤出現時。浮動動作按鈕與背景色調導致錯誤

下面是代碼:

<android.support.design.widget.FloatingActionButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:fabSize="mini" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentRight="true" 
    android:src="@drawable/ic_action_fab" 
    android:backgroundTint="#2196F3" 
    android:layout_margin="12dp"/> 

這裏是我的構建:

compileSdkVersion 25 
buildToolsVersion '25.0.0' 

defaultConfig { 
    applicationId "com.xxxx.xxxx" 
    minSdkVersion 10 
    targetSdkVersion 23 
    versionCode 1 
    versionName "2.0.4" 
} 

我還添加了谷歌的gradle設計。

錯誤:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxxx.xxxx/com.xxxx.xxxx.HomeActivity}: android.view.InflateException: Binary XML file line #141: Binary XML file line #141: Error inflating class android.support.design.widget.FloatingActionButton 

只要我刪除了android:backgroundtint標籤,該錯誤消失。任何想法爲什麼發生這種情況?

回答

6

相反的android:backgroundTint="#2196F3", 嘗試app:backgroundTint="#2196F3"

3

按照documentation,默認情況下它需要的顏色styles.xml設置屬性colorAccent

如果您希望使用屬性來改變顏色,在XML app:backgroundTint 而不是android:backgroundTint

所以對於晶圓廠圖標最終的XML將

<android.support.design.widget.FloatingActionButton 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
app:fabSize="mini" 
android:layout_alignParentBottom="true" 
android:layout_alignParentRight="true" 
android:src="@drawable/ic_action_fab" 
app:backgroundTint="#2196F3" 
android:layout_margin="12dp"/> 
0

由於答案上面給出的,它添加app:backgroundTint代替android:backgroundTint是正確的。你可以在這裏找到這個細節answer

我真的不知道我是否應該刪除這篇文章,因爲它可能有點複製,但我真的很感謝你的幫助。