Внешний вид текста, внутри TextView и CardView

#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:

Хорошо, я нашел решение. Вы должны придать тексту эффект тени, тогда текст будет выглядеть четким и без ламинирования цветом фона.