Після використання бібліотеки підтримки дизайну Android TextInputLayoutдля розміщення плаваючої мітки над EditTextкомпонентом, мені було цікаво, чи є спосіб додати плаваючу мітку до Spinnerкомпонента (не обов’язково за допомогою бібліотеки дизайну).
Під цим я маю на увазі щось на зразок TextViewрозміщеного над Spinner(очевидно, жодної анімації на зразок TextInputLayout), але я хочу, щоб розмір тексту, шрифт і колір відповідали розміру TextInputLayoutплаваючої мітки .
Наприклад, це може виглядати приблизно так (див. Мітки над Spinners):
Як я вже згадував раніше, моєю основною метою є розмітка надпису над Spinner, так само, як і в TextInputLayout- таким чином, розмір тексту, шрифт, колір та відстань між міткою та компонентом будуть однаковими.
На сторінці Google Design про текстові поля з плаваючою етикеткою є діаграма, що показує розміри етикетки щодо компонента, але не вказано кольору та розміру тексту етикетки:
Отже, підсумовуючи, я прошу:
- Якщо існує спеціальний компонент для досягнення того, про що я прошу, або спеціальний вигляд, який я можу використовувати, що це буде, і як я можу його використовувати.
- Якщо ні, то який розмір, колір тексту та шрифт плаваючої етикетки, щоб я міг розмістити TextViewнад моїм Spinnerіз розмірами макета, показаними на зображенні вище.
РЕДАГУВАТИ:
З порад Google Design для текстових полів , для плаваючих міток є таке:
Шрифт підказки та введення: Roboto Regular 16sp
Шрифт етикетки: Roboto Regular 12sp
Висота плитки: 72dp Оббивка
тексту вгорі та внизу: 16dp Оббивка
текстового поля: 8dp
а також зображень, показаних вище.
Отже, шрифт плаваючої етикетки: Roboto Regular 12sp . Тому ви можете використовувати a TextViewдля відображення Spinnerетикетки, оскільки я не знаю жодних спеціальних Views або спеціальних компонентів, які ви можете використовувати.
Однак після випробування це виглядає не так добре, як приклад, зображений на зображенні. Можливо, для цього краще підійде спеціальний вигляд , оскільки він може виглядати приємніше, але наведене вище рішення - це лише один із способів досягти чогось близького до того, що я спочатку хотів.



