Мой кастомный Spinner
при первом клике на него долго открывается (~3 сек). Он состоит из 25 обьектов класса Person
public static class Person{
private String name;
private Drawable ic;
Person(String name,Drawable ic){
this.name=name;
this.ic=ic;
}
public Drawable getIc() {
return ic;
}
public String getName() {
return name;
}
}
При последующих кликах открывается примерно за ~1 сек.
Но в некоторых приложения я смотрю и вижу что кастомный Spinner
имеет более 30 обьектов с ImageView
и TextView
и открывается моментально. Хотелось бы советов как достичь такого же результата.
Мой адаптер
private class AdapterSpinner extends ArrayAdapter<Person> {
private ArrayList<Person> objects;
public AdapterSpinner(Context context, int resource,ArrayList<Person> objects) {
super(context, resource,objects);
this.objects=new ArrayList<>();
this.objects.addAll(objects);
}
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
return getDropDownSpinnerView(position, convertView, parent);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
return getSpinnerView(position, convertView, parent);
}
public View getDropDownSpinnerView(int position, View convertView,
ViewGroup parent) {
LayoutInflater inflater = getLayoutInflater();
View row = inflater.inflate(R.layout.types_dropdown_spinner, parent, false);
TextView text = row.findViewById(R.id.text);
text.setText(objects.get(position).getName());
ImageView icon = row.findViewById(R.id.ic);
icon.setImageDrawable(objects.get(position).getIc());
return row;
}
public View getSpinnerView(int position, View convertView,
ViewGroup parent) {
LayoutInflater inflater = getLayoutInflater();
View row = inflater.inflate(R.layout.types_spinner, parent, false);
ImageView icon = row.findViewById(R.id.ic);
icon.setImageDrawable(objects.get(position).getIc());
return row;
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
ЗдравсвуйтеНе могу понять почему при срабатывании makePushNotification() выполняется функция done() только в блоке else как нужно