-1
アイテムリストを表示するこのアダプタクラス(ItemListAdapter)があります。そのビューでは、position 0の項目テキストを太字に設定しています。別のItemResultsListAdapterを作成する必要がありますが、位置0の要素を太字に設定する必要はありません。それは正常であるはずです。ArrayAdapterから拡張されたカスタムアダプタを拡張する<Connection>
ItemListAdapter
を延長するItemResultsListAdapter
を作成する必要があります。これを手伝ってください。
これは、私はこのクラスを拡張し、ItemResultsListAdapterを作成する必要がItemListAdapter
public class ItemListAdapter extends ArrayAdapter<Items> {
private List<Items> items;
private final Context context;
public ItemListAdapter(@NonNull Context context, @NonNull List<Items> items) {
super(context, 0, items);
this.context = context;
this.items = items;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.list_item, parent, false);
TextView textView = (TextView) rowView.findViewById(R.id.item_name);
if(items.get(position).getCategory().equals("COMPANY")) {
textView.setText(items.get(position).getName());
} else {
textView.setText(items.get(position).getFirst_name() + " "
+ items.get(position).getLast_name());
}
if (position == 0) {
textView.setTypeface(null, Typeface.BOLD);
}
return rowView;
}
}
です。
なぜ別のアダプタを作成しますか?同じアダプタクラスを使用して、trueまたはfalseを設定してコンストラクタにパラメータをもう1つ渡すだけで、テキストを太字にすることができます。 – Munir