我附上了一个应用程序的图像。您会看到类似 ListView 的东西,但有多个列,并且“可单击”按钮内有图像。
你们有人知道这个人是怎么做到的吗?我做了一些研究,但没有就如何完成这样的事情得出结论。
它是一个ListView还是完全不同的东西?
我想做类似的事情,但按钮的数量可能会有所不同,这是我的问题。 ListView 可以工作,但与图像中的示例相比,它看起来相当难看。 ImageButton 也可以工作(我认为),但您应该能够显示任意数量的它们。
最佳答案
如果您创建三个垂直方向的线性布局并用一个列表填充每个布局并将它们并排放置,那么这是很容易实现的。布局可能看起来像这样。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:minHeight="25px"
android:weight="1.0"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<ListView
android:minWidth="25px"
android:minHeight="25px"
android:weight="1.0"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:id="@+id/listView3" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:minHeight="25px"
android:weight="1.0"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<ListView
android:minWidth="25px"
android:minHeight="25px"
android:weight="1.0"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:id="@+id/listView2" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:minHeight="25px"
android:weight="1.0"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/linearLayout1">
<ListView
android:minWidth="25px"
android:weight="1.0"
android:minHeight="25px"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:id="@+id/listView1" />
</LinearLayout>
</LinearLayout>
宽度是在此设置的,这完全取决于您希望最终布局的外观,但您可能希望给它们所有相同的权重,以便让它们均匀地分布在屏幕上。之后,您可以在 java 代码中使用适配器,并在通过 id 获取它后填充 ListView 。然后,您还需要一个布局来表示每个单独的列表项,该布局将是自定义的,并且具有图像和文本
关于android - 显示数据库中数据的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25125440/