2017-06-26 117 views
0

我目前正在開發一個聊天應用程序,我希望聊天活動標題是可點擊的,以便我可以開始另一個活動。我有這個工作有一個自定義動作條和該佈局代碼:自定義操作欄按鈕樣式顏色問題

<TextView 
xmlns:android="http://schemas.android.com/apk/res/android" 
style="@style/Widget.AppCompat.Toolbar.Button.Navigation" 
android:id="@+id/actionbarTitle" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:clickable="true" 
android:text="@string/app_name" 
android:textColor="#FFFFFF" 
android:textSize="20sp" /> 

然而,這並不因爲紋波動畫顏色與其他導航按鈕不同的匹配本地操作欄的樣式:

enter image description here
這是原生按鈕的外觀。

enter image description here
而這就是我的文字在點擊時的樣子。

我該如何改變這看起來像本機用戶界面?

回答

1

脈動大小

漣漪上操作按鈕40dp直徑自API 23.添加這個到TextView

android:background="?selectableItemBackgroundBorderless" 

卸下style屬性。不要在不理解含義的情況下濫用樣式,這顯然不是導航按鈕。

紋波顏色

您需要充氣視圖時,這樣的主題屬性,如?selectableItemBackgroundBorderless正確解析,以獲得最中間上下文。

選項A)

你可以,但在XML佈局文件中TextView直接在Toolbar

選項B)

當添加TextView手動到工具欄使用從LayoutInflater所述Toolbar

val context = toolbar.context 
val inflater = LayoutInflater.from(context) 

選項C)

設置此TextViewActionBar自定義視圖使用操作欄的主題背景。

val context = supportActionBar!!.themedContext 
val inflater = LayoutInflater.from(context) 

文本顏色

android:textAppearance="@style/TextAppearance.Widget.AppCompat.Toolbar.Title" 

從主題在繼承的情況下開始使用輕動作條標準字體大小和文本顏色更換

android:textColor="#FFFFFF" 
android:textSize="20sp" 

+0

感謝您的回答,但我已經嘗試過了,波紋仍然看起來不像原生的,因爲它是三倍大:/。還有什麼想法? – Twometer

+0

@Twometer未設定半徑的波紋在視圖周圍繪製爲圓形。 'android:layout_width =「wrap_content」'會做到這一點。 –

+0

謝謝,主題背景固定:),現在看起來很完美。 – Twometer