2014-11-25 26 views
15

Alet kutusunda malzeme tasarımını nasıl elde edebilirim? i aşağıdaki çalıştı ama benim spinner buAndroid Spinner Araç Çubuğu stili

enter image description here

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="56dp" 
    android:background="@color/main_color" 
    app:contentInsetLeft="14dp" 
    app:contentInsetRight="14dp" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:theme="@style/ThemeOverlay.AppCompat.ActionBar"> 

    <Spinner 
     android:id="@+id/spinner_nav" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 

</android.support.v7.widget.Toolbar> 

benziyor Benim asgari sdk

ButterKnife.inject(this); 

    mToolbar.inflateMenu(R.menu.menu_login); 
    mToolbar.setTitle(R.string.sign_in); 
    mToolbar.setOnMenuItemClickListener(this); 

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

    mSpinner.setAdapter(spinnerAdapter); 
    mSpinner.setOnItemSelectedListener(this); 

bir menü geçici levha benim onCreate 15.

olduğunu her zaman Uygulama Çubuğu, yerine bir uzantısı olarak davranan yerine App Bar.

herhangi bağlantılar büyük yardımı olacağını

GÜNCELLEME ben ben bu şekilde kullanılan

enter image description here

istediğini elde etmek için yönetmek var

ButterKnife.inject(this); 

     mToolbar.setTitle(R.string.sign_in); 
     setSupportActionBar(mToolbar); 

     SpinnerAdapter spinnerAdapter = ArrayAdapter.createFromResource(getSupportActionBar().getThemedContext(), 
       R.array.options, android.R.layout.simple_spinner_dropdown_item); 

     getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 
     getSupportActionBar().setListNavigationCallbacks(spinnerAdapter, this); 

ve benim xml

<android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="56dp" 
     android:background="@color/app_secondary_color" 
     app:contentInsetLeft="14dp" 
     app:contentInsetRight="14dp" 
     app:popupTheme="@style/ThemeOverlay.AppCompat" 
     app:theme="@style/ThemeOverlay.AppCompat.ActionBar"> 

    </android.support.v7.widget.Toolbar> 

Ama Beyaz ve menünün metin rengi mavidir nasıl yapabilirim? da bu problem var. çok uzak görünüyor mu? Bu açılır oku okumak için herhangi bir yol var mı?

enter image description here

Güncelleme 2

iyi çalışırken çok fazla zaman geçirdikten sonra, ben beyaz ve bu sayede siyah yazı rengi nasıl elde var. Ben

<?xml version="1.0" encoding="utf-8"?> 

<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1" 
    style="?android:attr/spinnerDropDownItemStyle" 
    android:singleLine="true" 
    android:layout_width="match_parent" 
    android:background="@color/background_material_light" 
    android:textColor="@color/abc_primary_text_material_light" 
    android:layout_height="48dp" 
    android:ellipsize="marquee"/> 

sonra şimdi basın devlet çalışmıyor olmasıdır karşılaşmak benim OnCreate

spinnerAdapter.setDropDownViewResource(R.layout.custom_simple_spinner_dropdown_item); 

Sadece Problem bu kodu eklenmiş açılan tarzı için benim özel düzen yarattık, sadece bir uçak beyaz. Diğer açılır menüde görürseniz, bir öğeye tıkladığınızda arka plan rengi biraz daha koyu olur. Ayrıca bu rahatsız edici simge hala metinden çok uzak.

+0

Neyi başarmaya çalışıyorsunuz, sola mı sağa mı? – tyczj

+0

doğru olanı. Şu anda benim app solda.Malzeme templatörü – Milk

+0

'da belirtildiği gibi spinner üzerinde yüzmek için menüye ihtiyacım var Temel temayı Işık olarak değiştirmeyi denediniz mi? – waqaslam

cevap

0

color state list resource yapıp CheckedTextView için arka plan olarak uygulamanız gerekir. Ok simgesi çok uzak olduğu için AFAIK, çocukların uzunluğundan dolayı, en uzun çocuk kadar uzağa gider. Yani, bunu kişiselleştirmenin yolu yok.