Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.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_Listview_Android Recyclerview_Grid Layout_Staggered Gridview - Fatal编程技术网

Android如何实现这种类型的行和列跨度布局

Android如何实现这种类型的行和列跨度布局,android,listview,android-recyclerview,grid-layout,staggered-gridview,Android,Listview,Android Recyclerview,Grid Layout,Staggered Gridview,要求: 如果左视图可见或不可见,我应该能够滚动整个视图(如果我滚动视图中的任何位置,所有组件都应该一次滚动) 通过单击“显示/隐藏左视图”按钮,应该能够隐藏或显示左视图 在单元格(只有单元格不是左视图)中有一个展开/折叠功能(我可以增加/减少) 单元高度) 如果我在“设备设置”应用程序中更改字体大小,也应该在此处生效(因此支持动态字体大小) 导航抽屉+回收器视图是一个很好的解决方案 除导航抽屉外,您还可以使用包含标题、左侧和RecyclerView的ConstraintLayout 如果左视图

要求:

  • 如果左视图可见或不可见,我应该能够滚动整个视图(如果我滚动视图中的任何位置,所有组件都应该一次滚动)
  • 通过单击“显示/隐藏左视图”按钮,应该能够隐藏或显示左视图
  • 在单元格(只有单元格不是左视图)中有一个展开/折叠功能(我可以增加/减少) 单元高度)
  • 如果我在“设备设置”应用程序中更改字体大小,也应该在此处生效(因此支持动态字体大小)

导航抽屉+回收器视图是一个很好的解决方案

除导航抽屉外,您还可以使用包含标题、左侧和RecyclerView的ConstraintLayout

如果左视图可见或不可见,我应该能够滚动整个视图(如果我滚动视图中的任何位置,所有组件都应该一次滚动)

这将由回收者视图本身解决

通过单击“显示/隐藏左视图”按钮,应该能够隐藏或显示左视图

单击该按钮时,只需切换左视图的可见性,使用如下操作:

public void toggleLeftViewVisible() {
    int visibility = leftView.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE;
    leftView.setVisibility(visibility);
}
在单元格中(只有单元格不是左视图)有展开/折叠功能(我可以增加/减少单元格高度)

通过在recycler视图适配器中添加一个单击侦听器(可能在按钮上或视图本身上)来解决此问题

如果我在“设备设置”应用程序中更改字体大小,也应该在此处生效(因此支持动态字体大小)


如果你做的是正确的实现,这应该由Android自动处理。

constraintlayout当你的“左视图”的可见性消失时,然后使用你的按钮进行访问,使用
DrawerLayout
而不是浪费大量宝贵的屏幕空间……如果我们使用导航抽屉,当我们滚动“回收器”视图时,即使是左视图(导航抽屉)也应该随“回收器”视图一起滚动。当我们使用导航抽屉+回收器视图组合时是否可能。