Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android列表视图_Android - Fatal编程技术网

Android列表视图

Android列表视图,android,Android,我正在尝试构建一个可滚动的android列表视图,其中每个行项目将分为两部分,即每个行项目将有两个单元格/列。每列将显示一个数据元素 我还想为用户提供将数据元素添加到列表视图中下一个可用单元格/列的便利 因此,假设第一行的两个单元格已填充,则列表视图第二行的第一个单元格上将有一个+号 单击+,列表视图应向该单元格添加一个元素,+符号将移动到下一个单元格或下一行项目 你能建议如何建立这样的观点吗。是否需要为行项目编写自定义视图 如何确定每行项目的高度?您肯定需要编写一个自定义视图 和在自定义视图中

我正在尝试构建一个可滚动的android列表视图,其中每个行项目将分为两部分,即每个行项目将有两个单元格/列。每列将显示一个数据元素

我还想为用户提供将数据元素添加到列表视图中下一个可用单元格/列的便利

因此,假设第一行的两个单元格已填充,则列表视图第二行的第一个单元格上将有一个+号

单击+,列表视图应向该单元格添加一个元素,+符号将移动到下一个单元格或下一行项目

你能建议如何建立这样的观点吗。是否需要为行项目编写自定义视图


如何确定每行项目的高度?

您肯定需要编写一个自定义视图

和在自定义视图中

你有三种可能

View1 = One Column Data View and other Plus Button // wrap in LinearLayout

View2 = One Column Data View and Other DataView

View3 = Only Plus Button at Left
根据偶数项显示1或3

if(items.getCount%2==0)
{
//then plus button will be in first column
set third Linear Layout Visible and other gone
}
else
{
View1 Visible and other s gone
}
让我们把它分解一下。 首先,您声明要构建栅格视图。为了保持简单,网格视图应该是activity.xml文件的根布局。在这里,您将使用android:numColumns属性设置列数。下面是一个示例代码,它看起来像什么:

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/list"
    android:numColumns="2"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.android.app_name.activity"/>
现在可以使用ArrayList构建源代码

ArrayList<YourElement> array = new ArrayList<YourElement>();
现在,要将数组列表连接到网格视图,您将使用.setAdapter方法,并传入数组的名称,在本例中为array

      gridview.setAdapter(array);
这是我能带你走的最远的地方了。希望这对其他人也有帮助

array.add();
      gridview.setAdapter(array);