Java Android:来自单个数据的多列ListView

Java Android:来自单个数据的多列ListView,java,android,android-listview,Java,Android,Android Listview,我试图从一个字符串数组中创建一个具有多列的ListView 我试着搜索一些参考资料,但是每一个被问到的问题都和我想做的完全不同。通常,他们试图在ListView的不同列中显示不同的数据 而我想要的是来自单个数据数组的多列。 例如: ListView Column-1 Column-2 Data1 Data2 Data3 Data4 Data5 Data6 DataN DataN+1 类似这样的东西,还有一个滚动条 因此,

我试图从一个字符串数组中创建一个具有多列的ListView

我试着搜索一些参考资料,但是每一个被问到的问题都和我想做的完全不同。通常,他们试图在ListView的不同列中显示不同的数据

而我想要的是来自单个数据数组的多列。 例如:

ListView

Column-1     Column-2

Data1        Data2

Data3        Data4

Data5        Data6

DataN        DataN+1
类似这样的东西,还有一个滚动条


因此,我希望看到数据数组一次拆分为两列。

这是一个使用Arraylist Hashmap的示例

ArrayList<HashMap<String, String>> DataList = new ArrayList<>();
您的_LISTVIEW.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="15dp"
    >

    <TextView
        android:id="@+id/column1_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

    <TextView
        android:id="@+id/column2_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

    <TextView
        android:id="@+id/column3_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

</LinearLayout>


请添加一些您尝试过的代码。@Nidheesh很抱歉,我认为没有必要在这样的问题上发布代码。首先,我在寻找一个建议,不要修改我当前的代码。第二,当我一开始不知道怎么做的时候,我如何发布代码?它与使用SimpleAdapter的代码没有区别。我想你误解了我的意思。CMIIW。谢谢。尝试使用Arraylist和SimpleAdapter作为listview适配器HI@L2\U摊铺机。非常感谢你的独特想法。它确实解决了我问题中的问题示例。因此,我将把它标记为解决方案。但是,如果其他读者正在为同样的问题寻找更多的灵活性和定制。例如,L2_摊铺机的答案是好的,但对于每个数据及其视图自定义,可能有独立的侦听器的限制。我建议查看RecyclerView+GridLayoutManager以获得更多控制。谢谢
SimpleAdapter Adapter = new SimpleAdapter(MainActivity.this, DataList,
                R.layout.YOUR_LISTVIEW_LAYOUT, new String[]{"column1", "column", "column3"},
                new int[]{R.id.column1_textview, R.id.column2_textview, R.id.column3_textview});
        YOUR_LISTVIEW.setAdapter(Adapter);
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="15dp"
    >

    <TextView
        android:id="@+id/column1_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

    <TextView
        android:id="@+id/column2_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

    <TextView
        android:id="@+id/column3_textview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

</LinearLayout>