4

私はActionBarを搭載したAndroid Honeycombで作業しています。私は以下のようにActionBarを設定しました:HoneycombのActionBarでドロップダウンリストのスタイルを設定するにはどうすればよいですか?

// Configures the action bar 
private void configureActionBar() { 
    mActionBar = getActionBar(); 
    mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 

    SpinnerAdapter spinnerAdapter = ArrayAdapter.createFromResource(this, R.array.rooms, android.R.layout.simple_spinner_dropdown_item); 

    ActionBar.OnNavigationListener navigationCallback = new ActionBar.OnNavigationListener() { 
     public boolean onNavigationItemSelected(int itemPosition, long itemId) { 
      String[] rooms = getResources().getStringArray(R.array.rooms); 

      mAppState.setCurrentRoom(rooms[itemPosition]); 

      return false; 
     } 
    }; 

    mActionBar.setListNavigationCallbacks(spinnerAdapter, navigationCallback); 
} 

以下のイメージは、ActionBarの一部のスクリーンショットを表示しています。私はドロップダウンリストのスタイルを設定したいが、それを行う方法がわからない。このlinkにはいくつかのXMLサンプルがありますが、それらを適用する方法と、下で指摘されている特定の要素のスタイルを設定する方法はわかりません。

ActionBar Dropdown List for Styling

は、ここで私はしたいと思い変更の一覧です:

  1. 変更選択した項目のフォントサイズが言葉「ルームマネージャー」
  2. のものと一致すると削除表示されている選択項目の下にあるグレーの線
  3. ドロップダウンリストの上部にある青い線を削除します。
  4. リスト項目にラジオボタンを追加し、ドロップダウンリストで現在選択されている項目
  5. 変更に

リスト項目を分ける線の色を確認し誰もがこれを行う方法上の任意のアイデアを持っていますか?

ありがとうございました!

+0

バーをアクションバーの右側にどのように配置しますか? – cheloncio

答えて

3

リスト内の項目と表示されている項目をどのようにスタイルするかを知りました。解決策には、/ res/layoutディレクトリに2つのレイアウトxmlファイルを作成することが含まれていました.1つはスピナードロップダウン項目用、もう1つはセレクタ(表示項目)用です。私は、ArrayAdapterにビューリソースを追加することができました。

R.layout.spinner_dropdown_text_view:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/spinnerDropdownTextView" 
    android:layout_width="match_parent" 
    android:layout_height="50dp" 
    android:paddingLeft="10dp" 
    android:gravity="center_vertical" 
    android:textSize="18dp" /> 

R.layout.spinner_selector_text_view:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/spinnerSelectorTextView" 
    android:layout_width="210dp" 
    android:layout_height="match_parent" 
    android:paddingTop="12dp" 
    android:textSize="18dp" 
    android:textColor="@android:color/black" /> 

ArrayAdapterコード:

ArrayAdapter<CharSequence> aa = ArrayAdapter.createFromResource(this, R.array.rooms, R.layout.spinner_selector_text_view); 
aa.setDropDownViewResource(R.layout.spinner_dropdown_text_view); 

結果:

The result

残念ながら、ラジオボタンを追加する方法や、水平線を削除する方法がわかりませんでした。

関連する問題