java - 如何在 Android/Java ListView 中显示多个文本项?

标签 java android listview

我有一个带有复选框、图像和文本字段的 ListView 。现在我确实想在文本字段中显示多个项目。问题是我想要整齐的列中的参数。我能否以某种方式在文本字段中设置制表位或格式或类似的东西,或者我是否必须实际创建更多文本字段并在其自己的字段中设置每个值?

我的列表应该看起来像:

[Image]  [checkbox]   "arg11    arg12    arg13"
[Image]  [checkbox]   "arg21    arg22    arg23"
[Image]  [checkbox]   "arg31    arg32    arg33"

感谢您的任何建议。

编辑:只是为了澄清事情。我已经有一个带有图像/复选框和一个文本字段的工作 ListView /适配器。我是 Android 的新手,所以我想知道是否有一种优雅的方式来处理在文本字段中显示多个文本项。在 Windows 中,我会简单地使用 tabstopps,它们看起来是有序的,并且在一列中,但我不太了解我在 android 周围的方式,不知道是否有类似的东西,或者是否需要单独的文本字段来获取列中的文本字段。

最佳答案

您创建新的 xml,比如 row.xml,我们可以在 ListView 中为每一行扩充它。

根据需要设计行,例如:

行.xml

<LinearLayout android:layout_height="wrap_content"
     android:layout_width="fill_parent"
      android:orientation="horizontal">  
    <ImageView ..../>
    <CheckBox ...../>
    <TextView ...../>
    <TextView ...../>
 </LinearLayout>

然后为您的 ListView 使用 CustomAdapter

喜欢,

listView.setAdapter(new CustomAdapter());

自定义适配器,

 class CustomAdapter extends BaseAdapter{
  publicCustomAdapter() {
        mInflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }



    @Override
    public int getCount() {
        return xyz.size();
    }

    @Override
    public String getItem(int position) {
        return xyz.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

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

        ViewHolder holder = null;
        if (convertView == null) {
            convertView = mInflater.inflate(R.layout.row, null);
            holder = new ViewHolder();
       holder.imageView = (ImageViewView)convertView.findViewById(R.id.image);
       holder.checkbox = (CheckBox)convertView.findViewById(R.id.checkbox);
            holder.textView1 = (TextView)convertView.findViewById(R.id.text1);
            holder.textView2 = (TextView)convertView.findViewById(R.id.text2);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder)convertView.getTag();
        }
        //TODO set the values for views and return view
        return convertView;
    }

}

关于java - 如何在 Android/Java ListView 中显示多个文本项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9782367/

相关文章:

java - 用于控制和监控的简单中间件服务器

c# - VB6 应用程序的迁移

android - 即使在 layout_height 上使用 WRAP_CONTENT,RecycleView 也会显示间隙之间的额外空间

android微调器下拉项目未显示

android - Activity 在 requestCode 中返回 "0"

java - 如何将菜单按钮添加到 ListView ,同时保留 onClickListener?

java - Angular CORS 适用于 GET,但不适用于 DELETE

java - 在java中用多个字符拆分字符串

java - 无法更新自定义适配器中的项目

android - 在 Android 中按需显示上下文菜单