TextInputLayoutBir EditTextbileşenin üzerine kayan bir etiket yerleştirmek için Android Tasarım Destek Kitaplığı'nı kullandıktan sonra , Spinnerbileşene kayan bir etiket eklemenin bir yolu olup olmadığını merak ediyordum (mutlaka Tasarım Kitaplığı'nı kullanmak zorunda değil).
Bununla, TextViewa'nın üstüne yerleştirilmiş gibi bir şeyi kastediyorum Spinner(tabii ki benzeri animasyon yok TextInputLayout), ancak metin boyutunun, yazı tipinin ve renginin TextInputLayoutkayan etiketininkiyle eşleşmesini istiyorum .
Örneğin, şuna benzer görünecektir (' Spinnerlerin ü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 TextViewiçin Spinneretiketi görüntülemek için a Viewkullanabilirsiniz.
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.



