首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android中显示网格的问题

Android中显示网格的问题
EN

Stack Overflow用户
提问于 2019-05-18 05:22:54
回答 2查看 31关注 0票数 0

我正在尝试在Android中以编程方式显示5x5的按钮网格。但它不会显示整个网格

XML代码:

代码语言:javascript
复制
<LinearLayout
        android:id="@+id/mainTableLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"/>

Java代码:

代码语言:javascript
复制
LinearLayout mainTable = findViewById(R.id.mainTableLayout);

    for(int i = 0; i < COUNT_COLUMS; i++) {

        LinearLayout linearLayout = new LinearLayout(this);
        linearLayout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));

        linearLayout.setOrientation(LinearLayout.HORIZONTAL);

        for (int j = 0; j < COUNT_COLUMS; j++) {
            Button button = new Button(this);
            linearLayout.addView(button);
        }

        mainTable.addView(linearLayout);
    }
EN

Stack Overflow用户

发布于 2019-05-18 05:39:15

这应该是可行的:

代码语言:javascript
复制
LinearLayout mainTable = findViewById(R.id.mainTableLayout);

    DisplayMetrics metrics = getResources().getDisplayMetrics();
    int DeviceTotalWidth = metrics.widthPixels;
    int with = DeviceTotalWidth / 5;

    for (int i = 0; i < 5; i++) {
        LinearLayout row = new LinearLayout(this);
        row.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT));
        row.getWeightSum();
        for (int j = 0; j < 5; j++) {
            Button btnTag = new Button(this);
            btnTag.setLayoutParams(new LinearLayout.LayoutParams(with, LinearLayout.LayoutParams.WRAP_CONTENT));
            btnTag.setText("" + (j + 1 + (i * 5)));
            btnTag.setId(j + 1 + (i * 5));
            row.addView(btnTag);
        }

        mainTable.addView(row);
    }

但是更好的方法是使用GridLayout

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56193728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档