Прозрачный фон TextView в FrameLayout

Я поместил TextView в ImageView в FrameLayout. Я пробовал различные комбинации android:background для TextView, но всегда получал на нем прозрачный серый фон. Я бы хотел прозрачный фон. Атрибут android:background, похоже, игнорируется.

<HorizontalScrollView
    android:id="@+id/categories_horizontal_scrollview"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingBottom="25dip">
    <LinearLayout
        android:id="@+id/categories_linear_layout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
        <FrameLayout
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content">
        <ImageView  
            android:layout_width="fill_parent" 
            android:layout_height="fill_parent" 
            android:id="@+id/photos_imageview"
            android:scaleType="center"
            android:src="@drawable/photos_ipad" />
        <TextView
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:id="@+id/photos_text"
            android:layout_marginBottom="10dip"
            android:layout_gravity="center_horizontal|bottom"
            android:padding="3dip" 
            android:background="#00000000"
            android:textColor="#ffffffff"
            android:textSize="20dip" 
            />
        </FrameLayout>
              .
              .

person benkdev    schedule 30.04.2012    source источник
comment
Если вы пытаетесь использовать изображение за текстовым представлением, почему бы просто не установить изображение в качестве фона текстового представления? Использование android:backround=@drawable/photos_ipad   -  person Brayden    schedule 30.04.2012
comment
Кроме того, попробуйте использовать встроенный цвет Android для прозрачного фона в текстовом представлении (android:background=@android:color/transparent)   -  person Brayden    schedule 30.04.2012
comment
ваш текст не отображается на изображении...   -  person amp    schedule 30.04.2012
comment
Я пробовал android:background=android:color/transparent, это не сработало. Причина, по которой я делаю макет кадра, заключается в том, что мне нужно, чтобы текст был внизу изображения.   -  person benkdev    schedule 30.04.2012
comment
Хорошо, если это не сработало, что именно произошло? Это может иметь какое-то отношение к вашему просмотру прокрутки. Я бы сделал тестовое приложение, которое сначала имеет макет кадра и изображение/текстовое представление. Посмотрите, работает ли прозрачность. Затем добавьте линейный макет. А затем вид прокрутки. Посмотрите, сможете ли вы выяснить, где возникает проблема.   -  person Brayden    schedule 01.05.2012
comment
В макете действительно была проблема, если вы опубликуете ответ, я выберу его.   -  person benkdev    schedule 02.05.2012


Ответы (3)


Использовать это:

TextView tv;
tv.setBackgroundColor(0xXX??????);

Где XX - [00;FF] - показатель прозрачности. ?????? - Некоторые цифры (необработанный цвет)

Надеюсь помог)))

person UnknownJoe    schedule 30.04.2012
comment
Вы можете видеть выше, что он уже устанавливает для android:background значение #00000000, что то же самое, что вы предлагаете, за исключением того, что программно, а не в XML. - person Brayden; 01.05.2012
comment
Да, согласен, должно. Но я не думаю, что проблема заключается в вызове setBackgroundColor. Я думаю, что это где-то лежит в его иерархии макета. - person Brayden; 01.05.2012

Как указал Брейден, проблема заключалась в макете. В итоге я поместил ImageView и TextView в FrameLayout как единый ресурс, а затем добавил его динамически, где это необходимо.

person benkdev    schedule 10.06.2012

Мы используем подобный код для прозрачного фона.

android:background="@android:color/transparent"
person Dharmendra Sharma    schedule 28.10.2014