4

我需要您的幫助,以解決Android開發中的以下問題。 由於某些原因,當我擴展ActioBarActivity時,當按下EditText組件時(見圖1),剪切/複製/粘貼按鈕將正確顯示。Android上覆制/粘貼工具欄

enter image description here

不幸的是,如果我延長活動時,無法正確顯示的工具欄。您可以在圖像2上看到按鈕存在,但它們是白色的,用戶看不到它們。我已經調查,但我不知道如何解決這個問題。

enter image description here

如果你需要我可以共享代碼,但我認爲這是可以很容易地複製。

在此先感謝。

保羅

回答

3

創建一個自定義樣式和指定背景到你想要的顏色,並在主題XML資源文件中,「樣式」元素之間,設置了「機器人:actionBarStyle」的自定義樣式你剛剛創建,它會爲您更改動作欄顏色。

更新:我剛剛使用我的主題資源的默認文件夾(注意:文件名是任意的),如果您想爲v-11(API級別11)創建主題資源並創建新主題資源文件(同樣,文件名是任意的),並在文件名後加上「-v11」。

Folder structure

這是默認的主題資源文件,因爲它繼承屬性,並從Theme.AppCompat.Light.DarkActionBar屬性,你可以注意到,在這個文件中,你不能使用「Android」的命名空間。如果您有另一個主題資源文件,如上圖所示,Android Studio會自動創建用於Android版本21和更高版本設備的stylex.xml(v21)。您必須添加「Android」的命名空間中的每一個屬性,如actionBarStyle將成爲android:actionBarStyle,但你現在應該說,在動作條已經自21版本,API級別5

而且過時,在displayOptions屬性告訴Android關於如何顯示標題區域。這是速效值:

  1. 沒有
  2. useLogo
  3. showHome
  4. homeAsUp
  5. showTitle
  6. showCustom
  7. disableHome

注:background ATTR ibute只接受參考值,而不是硬編碼值。

The default theme resource file

下面是結果

Final result

+0

你能提供的代碼示例? – Paul 2014-12-03 03:47:11

+1

嘿,對於模糊的答案抱歉,請參閱我上面的修訂版本。 – Biu 2014-12-03 05:50:50

+0

這是一個很好的回答,真正幫助我瞭解有關Android主題的不同內容。這裏的問題是,基本上我沒有一個actionBar(我在擴展活動),我需要在剪切/複製/粘貼工具欄上應用樣式,這個樣式只有當我長按EditText框並選擇其中的文本。你有什麼想法嗎? – Paul 2014-12-04 03:15:54

8

嘗試在你的應用程序的主題定義使用這樣的:

<item name="actionModeBackground">@color/actionBarBgColor</item>