java - Android 拉伸(stretch) TableLayout XML 中的项目

标签 java android xml

在我的应用程序中,用户可以自己选择通知图标。我为此制作了一个下拉菜单,并将图标图像添加到表格布局中。问题是图片不适合小屏幕手机,而大屏幕(平板电脑、手机等)的边缘有很多空间。我怎样才能解决这个问题?提前致谢!

Preview

  <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp">
        <TableRow android:gravity="center">

            <ImageView
                android:id="@+id/img5"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_gravity="center"
                android:clickable="true"
                android:focusable="true"
                android:foreground="@drawable/ripple_circular_tabs"
                android:layout_margin="8dp"
                android:src="@mipmap/ic_notifications4"
                tools:ignore="ContentDescription" />

            <ImageView
                android:id="@+id/img6"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_gravity="center"
                android:layout_margin="10dp"
                android:clickable="true"
                android:focusable="true"
                android:foreground="@drawable/ripple_circular_tabs"
                android:src="@mipmap/ic_notifications10"
                tools:ignore="ContentDescription" />

            <ImageView
                android:id="@+id/img7"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_gravity="center"
                android:clickable="true"
                android:focusable="true"
                android:foreground="@drawable/ripple_circular_tabs"
                android:layout_margin="10dp"
                android:src="@mipmap/ic_notifications6"
                tools:ignore="ContentDescription" />


            <ImageView
                android:id="@+id/img8"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_gravity="center"
                android:layout_margin="8dp"
                android:clickable="true"
                android:focusable="true"
                android:foreground="@drawable/ripple_circular_tabs"
                android:src="@mipmap/ic_notifications7"
                tools:ignore="ContentDescription" />
        </TableRow>

    </TableLayout>

最佳答案

使用 android:layout_weight="1"android:layout_width="0dp" 来均匀分布。检查以下内容:

<TableRow android:gravity="center">

    <ImageView
        android:id="@+id/img5"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:clickable="true"
        android:focusable="true"
        android:foreground="@drawable/ripple_circular_tabs"
        android:layout_margin="8dp"
        android:src="@mipmap/ic_notifications4"
        tools:ignore="ContentDescription" />

    <ImageView
        android:id="@+id/img6"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:layout_margin="10dp"
        android:clickable="true"
        android:focusable="true"
        android:foreground="@drawable/ripple_circular_tabs"
        android:src="@mipmap/ic_notifications10"
        tools:ignore="ContentDescription" />

    <ImageView
        android:id="@+id/img7"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:clickable="true"
        android:focusable="true"
        android:foreground="@drawable/ripple_circular_tabs"
        android:layout_margin="10dp"
        android:src="@mipmap/ic_notifications6"
        tools:ignore="ContentDescription" />


    <ImageView
        android:id="@+id/img8"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:layout_margin="8dp"
        android:clickable="true"
        android:focusable="true"
        android:foreground="@drawable/ripple_circular_tabs"
        android:src="@mipmap/ic_notifications7"
        tools:ignore="ContentDescription" />
</TableRow>

输出:

  1. 肖像:

enter image description here

  • 风景:
  • enter image description here

    关于java - Android 拉伸(stretch) TableLayout XML 中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59809507/

    相关文章:

    c# - 如何将从 XSD 生成的类序列化为 XML

    c# - 获取 XmlDocument 的 "bottom"- C#

    java - Android - XMPPError : jid-malformed - modify

    java - 字符串解析不适用于 Java 中的正则表达式

    java - 使用 Notepad++ 编译 Java 代码

    java - 是什么原因导致打字失败?

    sql - Android多数据库打开

    按下 Flutter 底部导航栏时会出现 Android 底部导航

    java - 无法从 Byte 转换为 byte[] java

    xml - XSLT 1.0 中的数字舍入和精度问题