How to make the background of a Spinner transparent in Android?
Here is my spinner layout,
<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"
/>
and the arrangement of counter elements,
<?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"/>
and showing the spinner,
But I want both the spinner and the dropdown to be transparent. How do I get it?
+6
source to share
6 answers
Make one custom file in a portable folder.
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>
and set it as the background of the spinner -
android:background="@drawable/mybackground"
2) You can also do this in your layout for spinner
android:popupBackground="@android:color/transparent"
0
source to share
try this code:
<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"/>
add style to 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>
in Java code add:
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);
create res / layout / spinner_item.xml and add this code:
<?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" />
create res / layout / spinner_item_dropdown.xml and add this code:
<?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"
/>
0
source to share