gpt4 book ai didi

android - 在 ListView android中隐藏列

转载 作者:行者123 更新时间:2023-11-30 03:47:38 24 4
gpt4 key购买 nike

我有大约 20 列输入到 ListView 中。但我希望用户可以选择禁用(隐藏) View 中的某些列。我发现我可以制作自己的数组适配器并查看行。但我不想连续定义 2 到 20 个项目。有什么选择吗?

最佳答案

我找到了一种方法。例如,我在 ListView 中有这个项目布局。我将制作自​​己的适配器,然后只需调用 setVisibility(View.GONE);我将从 ListView 中隐藏此项目。PS:这只是真实代码中的示例,应该有一些 IF() 来隐藏列。

项目布局。

<TextView
android:id="@+id/description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />

<TextView
android:id="@+id/value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/description"
android:layout_alignBottom="@+id/description"
android:layout_toRightOf="@+id/description"
android:text="TextView" />

还有 MyAdapter。

private class ConnectedAdapter extends ArrayAdapter<ConnectionClass> {

private ArrayList<ConnectionClass> connectionList;

public ConnectedAdapter(Context context, int textViewResourceId,
ArrayList<ConnectionClass> countryList) {
super(context, textViewResourceId, countryList);
this.connectionList = new ArrayList<ConnectionClass>();
this.connectionList.addAll(countryList);
}

private class ViewHolder {
TextView description;
TextView value;
}

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

ViewHolder holder = null;
Log.v("ConvertView", String.valueOf(position));

if (convertView == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = vi.inflate(R.layout.activity_connected_item,
null);

holder = new ViewHolder();
holder.description = (TextView) convertView
.findViewById(R.id.description);
holder.value = (TextView) convertView
.findViewById(R.id.value);

convertView.setTag(holder);

} else {
holder = (ViewHolder) convertView.getTag();
}

ConnectionClass connection = connectedList.get(position);
holder.description.setText(connection.getDescription());
holder.description.setVisibility(View.GONE);
holder.value.setText(connection.getValue());

return convertView;

}

}

关于android - 在 ListView android中隐藏列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14711065/

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