簡體   English   中英

如何在android中使微調背景透明?

[英]How to make spinner background transparent in android?

這是我的微調器布局,

<Spinner
    android:layout_marginLeft="20dp"
    android:background="@android:drawable/btn_dropdown"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/spinnerQuality"
    android:layout_gravity="center_horizontal"
    />

和微調項目布局,

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    android:singleLine="true"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColor="#000000"
    android:paddingTop="10dp"
    android:paddingLeft="10dp"/>

並顯示微調器是,在此處輸入圖片說明

但我想讓微調器和下拉項目的背景都透明。 我怎么會得到那個?

試試這個//來改變下拉背景

android:popupBackground="@android:color/transparent"

//更改微調器背景

  android:background="@android:color/transparent"

試試這個代碼:

        <Spinner
        android:id="@+id/spinner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="4dip"
        android:theme="@style/SpinnerTheme"
        android:popupBackground="@android:color/transparent"/>

在 res/values/styles.xml 中添加樣式

<style name="SpinnerTheme">
    <item name="colorAccent">@color/blue_pastels</item>
    <item name="colorControlNormal">@color/blue_pastels</item>
</style>
<style name="RadioButtonStyle" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorControlNormal">@color/black</item>
    <item name="colorAccent">@color/black</item>
    <item name="android:textColor">@color/black</item>
</style>

在java代碼中添加:

    spinner.setOnItemSelectedListener(this);
    List type = new ArrayList();
    type.add("12");
    type.add("13");
    type.add("14");
    type.add("11");
    ArrayAdapter dataAdapter = new ArrayAdapter(context, R.layout.spinner_item, type );
    dataAdapter.setDropDownViewResource(R.layout.spinner_item_dropdown);
    spinner.setAdapter(dataAdapter);

創建 res/layout/spinner_item.xml 並添加以下代碼:

<?xml version="1.0" encoding="utf-8"?>

android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="14sp"
android:gravity="center"
android:textColor="@color/white_00" />

創建 res/layout/spinner_item_dropdown.xml 並添加以下代碼:

<?xml version="1.0" encoding="utf-8"?>

<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/black"
android:gravity="center_vertical"
android:paddingStart="12dip"
android:paddingEnd="7dip"
android:layout_margin="20dip"
android:checkMark="?android:attr/listChoiceIndicatorSingle"
android:ellipsize="marquee"
android:theme="@style/RadioButtonStyle"
android:textSize="14sp"

android:background="@color/TRANSPARENT"
android:backgroundTint="@color/theme_gray_10"
android:backgroundTintMode="src_over"
/>

組:

android.popupBackground="@null"

應用

android:background="@android:color/transparent"

查看textview,看看是否有幫助。

在drawable文件夾中創建一個自定義文件。

1) mybackground.xml

<?xml version="1.0" encoding="utf-8"?>
  <selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_pressed="false" android:drawable="@color/yourcolorName" />
  <item android:drawable="@android:color/transparent" />
</selector>

並將其設置為微調背景 -

android:background="@drawable/mybackground"

2) 您也可以在您的布局中為微調器執行此操作

android:popupBackground="@android:color/transparent"

采用

<Spinner
 android:background="@null"
 android:popupBackground="@android:color/transparent"/>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM