如何在android中使用水平和垂直滚动条显示类似电子表格的表格

如何在android中使用水平和垂直滚动条显示类似电子表格的表格,android,Android,我想在android屏幕上用水平和垂直滚动条显示excel工作表。请帮助我。我在网上搜索了很多。谢谢创建一个滚动视图,然后在这个地方创建一个水平滚动视图。现在,它的行为就像在同时具有垂直和水平滚动属性的对象上一样 创建一个滚动视图,然后在此位置内创建一个水平滚动视图。现在,它的行为就像在同时具有垂直和水平滚动属性的对象上一样 水平滚动视图和垂直滚动视图都有基类,但不能同时在两个维度上滚动 我发现Matt Clark在这个博客中创建了一个新的TwoDScrollView类 水平滚动视图和垂直滚动视

我想在android屏幕上用水平和垂直滚动条显示excel工作表。请帮助我。我在网上搜索了很多。谢谢创建一个滚动视图,然后在这个地方创建一个水平滚动视图。现在,它的行为就像在同时具有垂直和水平滚动属性的对象上一样

创建一个滚动视图,然后在此位置内创建一个水平滚动视图。现在,它的行为就像在同时具有垂直和水平滚动属性的对象上一样

水平滚动视图和垂直滚动视图都有基类,但不能同时在两个维度上滚动

我发现Matt Clark在这个博客中创建了一个新的TwoDScrollView类


水平滚动视图和垂直滚动视图都有基类,但不能同时在两个维度上滚动

我发现Matt Clark在这个博客中创建了一个新的TwoDScrollView类


我知道GridView不受您的欢迎。但它仍然为我们提供了一种更简单的方法来构建类似电子表格的UI

正如您所说的,GridView本身是不可水平滚动的,如果GridView中的控件数量超过500,那么它的速度会非常慢

但我认为您想要尝试的是固定gridview的大小,它将显示给定的矩形数据区域,并覆盖其触摸事件以模拟滚动动作。多亏了用于gridview的基本适配器和其他技术,您的工作将非常简单


这种方法的一个很好的例子是

我知道GridView不受欢迎。但它仍然为我们提供了一种更简单的方法来构建类似电子表格的UI

正如您所说的,GridView本身是不可水平滚动的,如果GridView中的控件数量超过500,那么它的速度会非常慢

但我认为您想要尝试的是固定gridview的大小,它将显示给定的矩形数据区域,并覆盖其触摸事件以模拟滚动动作。多亏了用于gridview的基本适配器和其他技术,您的工作将非常简单

这种方法的好例子是

PsuedoCode

在滚动视图中有一个表格布局

如何填充它->

电子表格中每行的

TableRow tr=新的TableRow()
对于行中的每个单元格
//创建一个文本视图//
TextView trCell=new TextView()
//设置文本视图文本,从电子表格当前单元格获取文本//
trCell.setText(cell.textvalue)
tr.addview(trCell)
}
tableLayout.addView(tr)//将tablerow添加到tableLayout//
}

由于表格位于滚动视图中,若表格行延长了滚动视图的长度,则会出现滚动条

如果你需要更多信息,我会发布我的确切代码。如果您仍然无法获取,我会将我的整个课程上传到GitHub。

PsuedoCode

在滚动视图中有一个表格布局

如何填充它->

电子表格中每行的

TableRow tr=新的TableRow()
对于行中的每个单元格
//创建一个文本视图//
TextView trCell=new TextView()
//设置文本视图文本,从电子表格当前单元格获取文本//
trCell.setText(cell.textvalue)
tr.addview(trCell)
}
tableLayout.addView(tr)//将tablerow添加到tableLayout//
}

由于表格位于滚动视图中,若表格行延长了滚动视图的长度,则会出现滚动条


如果你需要更多信息,我会发布我的确切代码。如果您仍然无法获取,我会将我的整个课程上传到GitHub。

但是,用户体验将非常糟糕。但在功能方面,这个解决方案确实有效。然而,用户体验将非常糟糕。但在功能方面,这个解决方案确实有效。我想我已经读过了,它很好。但是如何显示网格呢?每个单元格都应该是可选择和可更新的。你将如何实现这些目标?我认为GridView不起作用,因为它不能水平滚动。你们看到谓词布局了吗?您可以将其与TwoDScrollView配合使用,以达到您的目的。好的。我可以在TwoDScrollView中看到谓词布局。但有三个问题。一个大问题是谓词布局在一行中显示元素,无论我尝试了布局宽度和高度。另一个问题是将1000项加载到谓词布局中的速度太慢(10-20秒)。最后一个问题是我必须在布局XML中指定TwoDScrollView的直接子布局的大小。当然,这在实践中是行不通的。你以前试过这个吗?如果是的话,你能分享你的xml布局吗?我想我已经读过了,很好。但是如何显示网格呢?每个单元格都应该是可选择和可更新的。你将如何实现这些目标?我认为GridView不起作用,因为它不能水平滚动。你们看到谓词布局了吗?您可以将其与TwoDScrollView配合使用,以达到您的目的。好的。我可以在TwoDScrollView中看到谓词布局。但有三个问题。一个大问题是谓词布局在一行中显示元素,无论我尝试了布局宽度和高度。另一个问题是将1000项加载到谓词布局中的速度太慢(10-20秒)。最后一个问题是我必须在布局XML中指定TwoDScrollView的直接子布局的大小。当然,这在实践中是行不通的。你以前试过这个吗?如果是,您可以共享您的xml布局吗?