Articles of android gridlayout

Android GridLayout等列宽度

是否真的不可能在Android GridLayout中轻松强制相等的列宽? 尝试明显的布局…… …将最右边的按钮放在一个明显比其他三个更宽的列中。 (使用按钮文本播放,你可以很容易地得到更糟糕的例子。) 我阅读了关于GridLayouts中空间分布过多的Android文档,但是看起来很明显甚至列宽也经常(任何可能甚至是典型的)在这样的情况下需要我不得不相信我缺少明显/容易的东西。

android.support.v7.widget.GridLayout无法让它工作

我有一个Android项目,它在大多数菜单和屏幕中使用GridLayout。 但问题是从API 14及以后版本支持GridLayout。 由于我想让应用程序也可用于旧版本的android,我尝试使用Android自己的支持库GridLayout ,它增加了对API 7的支持。这正是我所寻找的,但是我不能为我的生活让它工作。 我尝试了所有这些解释和想法: Android的官方说明 解决方案1 解决方案2 解决方案3 解决方案4 解决方案5 和更多… 无论我做什么,我是怎么做的,或者我使用的是什么IDE(无论是Eclipse ADT还是Android Studio),它总是在布局XML中给我一个错误: The following classes could be instantiated: – android.support.v7.widget.GridLayout With either one of these exceptions showing in the error log: 1. android.content.res.Resources$NotFoundException: Could not resolve value 0x7F080000 2. java.lang.classnotfoundexception: android.support.v7.gridlayout.R$dimen 编辑:作为参考,这是我用来创建支持gridlayout(直接从android示例程序): 如果上述解决方案都不起作用,我可能做错了什么? 有什么我想念的,也许我的原始代码有问题吗? 任何帮助表示赞赏

如何以编程方式将android:layout_columnWeight =“1”设置为android支持v7 Gridlayout中的元素

我正在尝试以编程方式使用2列构建GirdLayout,并且我希望这些列的宽度设置为屏幕宽度的一半。 我想你可以从API 21或支持v7 GirdLayout视图执行此操作。 我看到使用android:layout_columnWeight =“1”的示例来执行此操作。 但我无法find如何以编程方式执行此操作。 任何人都可以帮我解决这个问题吗? package com.tunify.v3.component; import java.util.ArrayList; import android.support.v7.widget.GridLayout; import android.util.DisplayMetrics; import android.util.TypedValue; import android.view.ViewGroup; import com.tunify.asme.data.ChangeableSelectionParameterValue; public class ChangeableSelectionParameters extends GridLayout{ //private ArrayList selectionParameterViews; private ArrayList selectionParameterValues; private static final int ITEM_PADDING_LEFT_DP = 0; private static final int ITEM_PADDING_RIGHT_DP = 0; private static final int ITEM_PADDING_TOP_DP = 0; private […]

在RecyclerView的末尾添加空间

我有一个带有gridlayout的recyclerview。 我想要的是当用户滚动到列表的末尾( 请参阅我的坏模型 )时,应该有一个高度为50dp的空白空间,这与我的网格尺寸不同。 请注意,此空间仅在最末端可见,因为我不想更改布局。 我可以这样做,以便recycerview的边距为50dp,但我不想这样做。

使用xml布局dynamic添加片段到GridLayout是不行的

在我们的应用程序中,我们试图dynamic添加片段到GridLayout。 XML格式的空网格布局与片段的布局一样。 在运行时,我们检查一些数据,并从中确定要添加到布局的片段数量以及每个片段使用哪个布局。 当我们有片段为其生成的视图分配一个大小的时候,它是全部工作的,但是如果我们在片段的布局文件中指定了大小,则在网格布局中什么都不显示。 显然,我们可以在创build视图时简单地指定大小,但是我们更愿意在碎片的xml布局中进行,因为这样可以让我们利用Android的内置系统为每个设备select正确的布局。 我正在使用支持库碎片。 如果这有所作为,我不使用支持库GridLayout 相关的代码和XML如下: GridLayout XML: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android"> <ScrollView android:id="@+id/grid_scroll" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@+id/bottom_fragment" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginRight="8dp" android:layout_marginTop="?android:attr/actionBarSize" android:overScrollMode="ifContentScrolls" > <GridLayout android:id="@+id/grid" android:layout_width="match_parent" android:layout_height="wrap_content" android:alignmentMode="alignMargins" android:animateLayoutChanges="true" android:columnCount="3" android:columnOrderPreserved="true" android:orientation="horizontal" android:overScrollMode="ifContentScrolls" android:rowOrderPreserved="true" > </GridLayout> </ScrollView> </merge> 片段XML的一个例子 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="200dp" android:layout_height="100dp" android:alpha="1" > <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="match_parent" […]

将视图dynamic添加到GridLayout时,alignment方式不正确

当通过XML添加button – 一切都好 <GridLayout android:id="@+id/social_gl_content" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerHorizontal="true" android:alignmentMode="alignBounds" android:columnCount="2" android:padding="8dp"> <LinearLayout android:layout_width="0dp" android:layout_height="45dp" android:layout_columnWeight="1"> <Button android:layout_width="fill_parent" android:layout_height="45dp" android:background="@android:color/holo_blue_light" android:text="Hi"/> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="45dp" android:layout_columnWeight="1"> <Button android:layout_width="fill_parent" android:layout_height="45dp" android:background="@android:color/holo_green_light" android:text="Whatsapp"/> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="45dp" android:layout_columnWeight="1"> <Button android:layout_width="match_parent" android:layout_height="45dp" android:background="@android:color/holo_green_light" android:text="This is facebook" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="45dp" android:layout_columnWeight="1"> <Button android:layout_width="match_parent" android:layout_height="45dp" android:background="@android:color/holo_blue_light" android:text="On" /> </LinearLayout> […]

RecyclerView与GridLayoutManager

装饰RecyclerView具有这种外观和感觉的最好和最简单的方法是什么? 我正在开发一个旅行座位预订应用程序…我知道我可以做与gridlayout经理recyclerview ..但应该是什么步骤我不知道一件事要注意每个巴士有不同的座位安排

Android:GridLayout项目之间的间距

我有一个充满了button的网格布局,现在我想要button更远离彼此,我应该写什么代码? 我试图search它,但只发现了GridView的解决scheme,而不是GridLayout。

GridLayout列超出了它的界限

我正在尝试制作一个网格状的表单,类似于官方Android Developers博客上的例子。 这是我的布局: <?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="match_parent" android:orientation="vertical"> <GridLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="48dp" android:layout_marginRight="48dp" android:layout_marginTop="@dimen/activity_vertical_margin" android:columnCount="2" android:rowCount="2"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="0" android:layout_gravity="end" android:layout_row="0" android:text="Send" android:textColor="?android:attr/textColorPrimary" android:textSize="24sp" /> <Spinner android:id="@+id/send_currency" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" android:layout_row="0" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="0" android:layout_gravity="end" android:layout_row="1" android:text="to" android:textColor="?android:attr/textColorPrimary" android:textSize="24sp" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" android:layout_row="1" android:hint="username" android:textColor="?android:attr/textColorPrimary" android:textSize="24sp" /> […]

GridLayout(不是GridView) – 单元格之间的空格

我使用GridLayout (支持)在我的应用程序中显示ImageView 。 有3列5行。 问题是GridLayout中的单元格会自动获得它们之间的空间。 我没有设置填充或单元格的边距。 请参考下面的图片。 所有单元格dynamic添加,这里是我如何添加这些单元格。 获得屏幕宽度和高度: Point size = new Point(); getWindowManager().getDefaultDisplay().getSize(size); screenWidth = size.x; screenHeight = size.y; rowHeight = (int) (screenHeight * 0.2); 将视图添加到GridLayout: GridLayout.LayoutParams params = new GridLayout.LayoutParams( getSpec(rowColumn[0]), getSpec(rowColumn[1])); params.height = rowHeight; if (rowColumn[1].equalsIgnoreCase("col_full")) { params.width = (int) (screenWidth); } else if (rowColumn[1].equalsIgnoreCase("col_two_part")) { params.width = (int) (screenWidth * […]