我在布局中有一个textview,我将点击监听器设置为布局,并且在按下布局时更改了布局的颜色。但是我想将textview的背景设置为透明,但它不能。它采用窗口的背景(窗口的背景为灰色,我的布局背景为白色)而不是布局的背景。
<LinearLayout android:layout_width="match_parent"
android:layout_height="50dp"
style="@style/TestLayout">
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="Test"
android:background="@android:color/transparent"/>
</LinearLayout>
在styles.xml
<style name="TestLayout" parent="AppTheme.NoActionBar">
<item name="android:background">@drawable/selector_test_small_layout</item>
</style>
在selector_test_small_layout
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true" android:state_enabled="true"
android:drawable="@drawable/s_pressed_layout" />
<item android:state_hovered="true" android:state_enabled="true"
android:drawable="@drawable/s_pressed_layout"/>
<item android:state_enabled="true" android:drawable="@drawable/s_color_primary"/>
<item android:state_enabled="false" android:drawable="@drawable/s_color_primary"/>
</selector>
更新:很抱歉我的xml还不够用。明天我会正确更新Y_Y。现在我没有源代码,只有图片
更新:我在styles.xml中包含了更多内容
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="android:windowContentOverlay">@null</item>
<item name="colorPrimary">@color/colorPrimary</item>
**<item name="android:windowBackground">@color/setting_divider</item>**
</style>
在AndroidManifest.xml中
<application
android:name=".TestApplication"
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
**android:theme="@style/AppTheme**">
....
</application>
答案 0 :(得分:3)
我检查了上面添加的代码,我根本看不到任何问题。你能否分享一下屏幕快照,指出确切的问题。您也可以尝试在TextView上设置background =“@ null”。
答案 1 :(得分:1)
当TextView.Background为null时,将采用textView,父背景
答案 2 :(得分:0)
有些陈旧,但希望如此,它可以对其他人有所帮助
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@drawable/backfull</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowActionModeOverlay">true</item>
<item name="windowActionModeOverlay">true</item>
</style>
<style name="AppTheme2" parent="AppTheme.Base">
<item name="colorPrimary">@drawable/backfull</item>
<item name="colorPrimaryDark">@android:color/white</item>>
<item name="colorAccent">@android:color/black</item>
<item name="colorButtonNormal">@android:color/white</item>
</style>
<style name="ToolbarTheme" parent="Widget.AppCompat.Toolbar">
<item name="android:background">@drawable/backfull</item>
<item name="background">@android:color/black</item>
<item name="titleTextAppearance">@style/ToolbarTitleTheme</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
<item name="theme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
</style>
<style name="ToolbarTitleTheme">
<item name="android:textColor">@android:color/holo_red_dark</item>
<item name="android:textStyle">bold</item>
</style>