#java #android #textview #android-cardview
#java #Android #textview #android-cardview
Вопрос:
Когда я использую TextView для отображения текста и устанавливаю цвет фона для примера на серый, тогда отображаемый текст выглядит поглощенным этим цветом фона. Итак, моя идея состояла в том, чтобы добавить TextView в CardView, присвоить Cardview backgroundColor и установить высоту TextView выше, чем CardView, но она все та же. Я даже пытался добавить в CardView макет с Textview внутри и установить высоту макета выше. Я хочу, чтобы отображаемый текст плавал над представлением. У кого-нибудь есть идея, как решить эту проблему?
Вот скриншот того, что я имею в виду. Когда вы смотрите на элементы, вы можете увидеть тонкий слой (ламинирование) серого цвета поверх смайликов:https://drive.google.com/file/d/1W2E6Ivom0WEyrTtqBeLu1Z3rtHdMXKKS/view?usp=drivesdk
И вот последний код:
<androidx.cardview.widget.CardView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAlignment="viewEnd"
android:layout_gravity="end"
android:layout_margin="6dp"
app:cardCornerRadius="5dp"
android:elevation="20dp"
android:background="#80817c">
<TextView
android:textSize="18sp"
android:textAlignment="viewEnd"
android:layout_gravity="end"
android:id="@ id/user_ping"
android:layout_margin="5dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:text="siema"
android:elevation="25dp"/>
</androidx.cardview.widget.CardView>
Комментарии:
1. Вы пробовали устанавливать равные высоты
TextView
иCardview
? Например, 0dp для обоих. этот документ , похоже, предполагает, что тень зависит от разницы высот между элементами в макете.2. Я пробовал это, это все то же самое. И имеет смысл установить высоту TextView выше, чем CardView. Но, пожалуйста, проведите простой эксперимент. Создайте TextView с тем же цветом фона, что и у меня, и вставьте смайлик в TextView, вы поймете, что я имею в виду. И когда вы увидите это, вы увидите, что даже простой текст выглядит теневым.
Ответ №1:
Хорошо, я нашел решение. Вы должны придать тексту эффект тени, тогда текст будет выглядеть четким и без ламинирования цветом фона.