gpt4 book ai didi

java - 如何在 ArrayAdapter 中为 ListView 使用多个 TextView ?

转载 作者:行者123 更新时间:2023-11-29 09:45:25 25 4
gpt4 key购买 nike

我试图在列表行中显示单独的项目。所以我使用 4 个 TextView 。但是我在扩展 Activity 的类中使用了 arrayadapter。现在我必须根据该 TextView 将字符串列表排成一行。如何做到这一点?非常感谢任何帮助,并在此先感谢...

最佳答案

在这种情况下,我通常会扩展 ArrayAdapter。通常,您只需重写适配器中的两个函数 - getView() 和其中一个构造函数。

适配器的代码如下:

/** class to act as list adapter for rows List */
private static class FourTextListAdapter extends ArrayAdapter<MyDataClass> {

/** To cache views of item */
private static class ViewHolder {
private TextView text1;
private TextView text2;
private TextView text3;
private TextView text4;

/**
* General constructor
*/
ViewHolder() {
// nothing to do here
}
}

/** Inflater for list items */
private final LayoutInflater inflater;

/**
* General constructor
*
* @param context
* @param resource
* @param textViewResourceId
* @param objects
*/
public FourTextListAdapter(final Context context,
final int resource,
final int textViewResourceId,
final List<User> objects) {
super(context, resource, textViewResourceId, objects);

this.inflater = LayoutInflater.from(context);
}

@Override
public View getView(final int position, final View convertView, final ViewGroup parent) {

View itemView = convertView;
ViewHolder holder = null;
final MyDataClass item = getItem(position);

if(null == itemView) {
itemView = this.inflater.inflate(R.layout.four_texts_item, parent, false);

holder = new ViewHolder();

holder.text1 = (TextView)itemView.findViewById(R.id.text1);
holder.text2 = (TextView)itemView.findViewById(R.id.text2);
holder.text3 = (TextView)itemView.findViewById(R.id.text3);
holder.text4 = (TextView)itemView.findViewById(R.id.text4);

itemView.setTag(holder);
} else {
holder = (ViewHolder)itemView.getTag();
}

holder.text1.setText(item.getText1());
holder.text2.setText(item.getText2());
holder.text3.setText(item.getText3());
holder.text4.setText(item.getText4());

return itemView;
}
}

关于java - 如何在 ArrayAdapter 中为 ListView 使用多个 TextView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7952565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com