android - 具有适合屏幕的动态列和行的 GridView (无需滚动)

标签 android gridview scrollview

我有一个在 this 的帮助下设计的 gridview示例。

我能够毫无问题地显示 GridView ,但问题是我必须在纵向和横向模式下工作,在纵向模式下,它将是 3 行和 2 列,高度固定,没有任何滚动和横向模式它将是 2 行和 3 列,没有任何滚动,这里的挑战是我的 gridview 中目前有 6 个项目,假设明天如果我将其更改为 8 或 4 个项目,它应该可以在不向两个方向滚动的情况下工作,也应该适用于两个手机和平板电脑。

我尝试了很多搜索并得到了这个并尝试了它会给我设备的高度和宽度我尝试递减 header(40dp) 值和 footer(40dp) 具有高度和宽度但不起作用。

Display mDisplay= activity.getWindowManager().getDefaultDisplay();
int width= mDisplay.getWidth();
int Height= mDisplay.getHeight();

这是我的布局的样子:

header

gridview //items may change from 6 ,4,8 but it should fit to this area with scrolling

footer

请帮助我被困了很长时间。

最佳答案

亲爱的,你知道动态应用高度和宽度,然后应用 gridview 运行时 ImageView 的高度和宽度。

亲爱的工作,然后景观交换宽度和高度。

试试这个。

*互换高度和宽度*

WindowManager winManager = (WindowManager) myContext.getSystemService(Context.WINDOW_SERVICE);
        screenWidth = winManager.getDefaultDisplay().getWidth();
        screenHeight = winManager.getDefaultDisplay().getHeight();

int temp=screenWidth;
screenWidth=screenHeight;
screenHeight=temp;

关于android - 具有适合屏幕的动态列和行的 GridView (无需滚动),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14000063/

相关文章:

android - 如何仅在我的布局的一部分上实现 ScrollView

android - @media 查询如何工作?

android - Android M 开发者预览版中的 Volley : org. apache.http 无法解析

android - 转码后的 MPEG-4 视频无法在 Android 的 native 应用程序上播放

java - GridView getView 问题

android - ScrollView diorders 并移除 relativelayout 的内容

ios - 如何阻止iOS应用向上滚动

android - 我可以仅在 Ubuntu 上开始使用 android SDK 和 AVD 进行 native 开发吗?

xaml - UWP 社区工具包 AdaptiveGridView 控件仅包含一项

c# - 您可以将 asp.net gridview 数据绑定(bind)到基类中的字段吗?