Сначала я использовал Spinner по умолчанию для отображения данных в Spinner, но не смог изменить стиль шрифта Spinner. Поэтому я использовал Custom Spinner для отображения данных и могу изменить стиль шрифта
ВотСнимки раскрывающегося списка ScreenShots Стрелка раскрывающегося списка представляет собой изображение
Поэтому, когда я нажимаю на раскрывающийся список, я хочу, чтобы стрелка раскрывающегося списка скрывалась.Вот код xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Large Text"
android:fontFamily="@font/montserrat_regular"
android:textSize="@dimen/_12sdp"
android:padding="@dimen/_5sdp"
android:layout_marginTop="@dimen/_1sdp"
android:textAlignment="center"
/>
</LinearLayout>
Вот код активности xml
<Spinner
style="@style/SpinnerTheme"
android:id="@+id/languageDropdown"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="16dp"
android:background="@null"
android:entries="@array/Languages"
android:spinnerMode="dropdown"
android:textAlignment="center"
android:gravity="center"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.501"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/relativeLayout15"
/>
<ImageButton
android:layout_width="10dp"
android:layout_height="6dp"
android:layout_alignParentBottom="true"
android:layout_marginEnd="8dp"
android:layout_marginStart="33dp"
android:layout_marginTop="29dp"
android:layout_toEndOf="@+id/languageDropdown"
android:background="@null"
android:scaleType="fitCenter"
android:src="@drawable/dropdownarrow"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.589"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/relativeLayout15" />
private class MyArrayAdapter extends BaseAdapter {
private LayoutInflater mInflater;
public MyArrayAdapter(LoginActivity con) {
// TODO Auto-generated constructor stub
mInflater = LayoutInflater.from(con);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return spinnerData.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
final ListContent holder;
View v = convertView;
if (v == null) {
v = mInflater.inflate(R.layout.my_spinner_style, null);
holder = new ListContent();
holder.name = (TextView) v.findViewById(R.id.textView1);
v.setTag(holder);
} else {
holder = (ListContent) v.getTag();
}
// holder.name.setTypeface(myFont);
holder.name.setText("" + spinnerData[position]);
return v;
}
}
static class ListContent {
TextView name;
}