Есть ли способ добавить внутреннюю тень в TextView на Android? - PullRequest
14 голосов
/ 29 июля 2011

Я хотел бы сделать inner shadow на textview, но я не могу найти такого примера в Интернете.

Есть ли способ сделать это на Android?

Я знаю эти атрибуты:

android:shadowColor
android:shadowRadius
android:shadowDx
android:shadowDy

Я что-то пропустил?

Ответы [ 2 ]

20 голосов
/ 24 апреля 2012

Если вы ищете такие внутренние тени:

enter image description here

Вы можете попробовать MagicTextView

    <com.qwerjk.better_text.MagicTextView
        xmlns:qwerjk="http://schemas.android.com/apk/res/com.qwerjk.better_text"
        android:textSize="42dp"
        android:textColor="#FFffff00"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textStyle="bold"
        android:padding="10dp"
        qwerjk:innerShadowDy="3"
        qwerjk:innerShadowColor="#FF000000"
        qwerjk:innerShadowRadius="5"
        android:text="InnerShadow" />

Примечание: я сделал это и публикую больше ради будущих путешественников, чем ОП. Это пограничный спам, но быть по теме, возможно, приемлемым?

11 голосов
/ 19 сентября 2011

Если вы хотите, чтобы TextView имела внутреннюю тень следующим образом:

enter image description here

вы должны использовать 9-патч, как этот:

enter image description here

Установить 9-патч для рисования в качестве фона TextView.

Атрибуты, которые вы упоминаете: android:shadowColor, android:shadowRadius, android:shadowDx, android:shadowDy служат другим целям, они создают тень для текста:

enter image description here

...