Я хочу настроить Listview с помощью ArrayAdapter в Fragment.Here мой весь код.Listview in Fragment Использование ArrayAdapter не настраивается
Фрагмент :::
public class HairstylesFragment extends Fragment {
ListView HairStylelz;
Integer[] imageId = {
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz,
R.drawable.man_menu_buzz
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_hairstyles, container, false);
HairStylelz=(ListView)view.findViewById(R.id.Listview_HairStyle);
HairStylez_Adapter adapter = new HairStylez_Adapter(view.getContext(),imageId);
HairStylelz.setAdapter(adapter);
return view;
}
}
ArrayAdapter ::
public class HairStylez_Adapter extends ArrayAdapter<String> {
Integer[] imageId;
Context context;
public HairStylez_Adapter(Context context, Integer[] imageId) {
super(context, R.layout.listview_adapter_hairstyle);
this.context=context;
this.imageId=imageId;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView= inflater.inflate(R.layout.listview_adapter_hairstyle, null, true);
ImageView imageView = (ImageView) rowView.findViewById(R.id.Hairstyle_imageview);
imageView.setImageResource(imageId[position]);
Log.d("settingup","");
return rowView;
}
}
Но ListView Не Настройка его показ пустой экран. Есть ли отсутствующие в моем коде? Помощь в установке Listview В Фрагмент
Благодаря
я не уверен, но мне кажется, что вам потребуется использовать Baseadapter, как вы используете ArrayAdapter и вы передаете массив целых чисел. Попробуйте переопределить методы getCount(), getItemId (int position) и getItem (int position) и вернуть значение imageId count, 0 и imageId [position]. ИЛИ попробуйте изменить ArrayAdapter на ArrayAdapter . Также попробуйте добавить adapter.notifyDataSetChanged() после того, как вы установитеAdapter –
Спасибо @RajenRaiyarela, что он работает, вы сохранили мое время. Просто добавьте это в ответ, я дам правильную оценку этого –
Добро пожаловать. Но я не уверен, какое из моих предложений работало, поскольку я дал вам 2 - 3 предложения для проверки. –