TextInputLayout
Bir EditText
bileşenin üzerine kayan bir etiket yerleştirmek için Android Tasarım Destek Kitaplığı'nı kullandıktan sonra , Spinner
bileşene kayan bir etiket eklemenin bir yolu olup olmadığını merak ediyordum (mutlaka Tasarım Kitaplığı'nı kullanmak zorunda değil).
Bununla, TextView
a'nın üstüne yerleştirilmiş gibi bir şeyi kastediyorum Spinner
(tabii ki benzeri animasyon yok TextInputLayout
), ancak metin boyutunun, yazı tipinin ve renginin TextInputLayout
kayan etiketininkiyle eşleşmesini istiyorum .
Örneğin, şuna benzer görünecektir (' Spinner
lerin üzerindeki etiketlere bakın ):
Daha önce de bahsettiğim gibi, asıl amacım Spinner
, aynen olduğu gibi üzerinde bir etiket bulundurmak TextInputLayout
- yani metin boyutu, yazı tipi, renk ve etiket ile bileşen arasındaki mesafeler aynı olacaktır.
Açık etiket metin alanları yüzen konusunda Google Tasarımı sayfasında , bileşene etiket göreli boyutlarını gösteren bir şekil bulunmaktadır, ancak etiket metni rengi veya boyutu hiçbir belirti yoktur:
Özetlemek gerekirse, şunu soruyorum:
- İstediğimi elde etmek için özel bir bileşen veya kullanabileceğim özel bir görünüm varsa, bu ne olurdu ve onu nasıl kullanabilirim.
- Değilse, kayan etiket metni boyutu, rengi ve yazı tipi nedir, böylece yukarıdaki resimde gösterilen mizanpaj boyutlarıyla bir TextView
üstüme yerleştirebilirim Spinner
.
DÜZENLE:
Gönderen metin alanları için Google Tasarım kurallar , bu yüzen etiketler için aşağıdaki vardır:
İpucu ve giriş yazı tipi: Roboto Normal 16sp
Etiket yazı tipi: Roboto Normal 12sp
Döşeme yüksekliği: 72dp
Metin üst ve alt dolgusu: 16dp
Metin alanı bölücü dolgusu: 8dp
yukarıda gösterilen resimlerin yanı sıra.
Yani kayan etiket yazı tipi şu şekildedir : Roboto Regular 12sp . Bu nedenle, kullanabileceğiniz herhangi bir özel bileşen veya özel bileşen bilmediğim TextView
için Spinner
etiketi görüntülemek için a View
kullanabilirsiniz.
Ancak , denedikten sonra, görselde gösterilen örnek kadar iyi görünmüyor. Daha güzel görünebileceğinden özel bir görünüm bunun için daha iyi olabilir, ancak yukarıdaki çözüm, başlangıçta istediğim şeye yakın bir şeyi başarmanın yalnızca bir yoludur.