0

我有一个居中的 2 个按钮的 android 视图。当我在平板电脑上运行应用程序时,我想将按钮大小更改为更大,因为它们在那里看起来小得可笑,因为它与手机的大小相同。

我怎样才能做到这一点?

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="#e9e9e9"
                android:orientation="vertical"
                android:paddingBottom="@dimen/activity_vertical_margin"
                android:paddingLeft="@dimen/activity_horizontal_margin"
                android:paddingRight="@dimen/activity_horizontal_margin"
                android:paddingTop="@dimen/activity_vertical_margin" >

    <ImageView android:id="@+id/imageView1"
               android:layout_height="wrap_content"
               android:layout_width="wrap_content"
               android:layout_centerInParent="true"
               android_layout_gravity= "center"
               android:layout_marginLeft="30dp"
               android:layout_marginRight="30dp"
               android:src="@drawable/icon_bakgrund_android">
    </ImageView>

    <RelativeLayout

            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            >

        <TableLayout
                xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/TableLayout01"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:layout_centerInParent="true"
                >


        <TableRow android:id="@+id/TableRow01"
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content">

            <Button
                    android:id="@+id/button1"
                    android:layout_width="260dp"
                    android:layout_height="50dp"
                    android:background="@drawable/nybutton"
                    android:layout_below="@+id/button2"
                    android:text="@string/las_sollefteabladet"
                    android:textColor="#ffffff"
                    android:layout_centerHorizontal="true"/>


        </TableRow>

        <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content"
                  android:layout_height="wrap_content"
                  android:adjustViewBounds="true"
                  android:scaleType="centerCrop">
            <Button
                    android:id="@+id/button2"
                    android:layout_width="260dp"
                    android:layout_height="50dp"
                    android:layout_marginTop="10dp"
                    android:background="@drawable/nybutton"
                    android:layout_centerInParent="true"
                    android:text="@string/annonsorer"
                    android:textColor="#ffffff"
                    />


        </TableRow>

        </TableLayout>

    </RelativeLayout>

    </RelativeLayout>
4

6 回答 6

1

在这里你可以插入按钮代码

android:layout_weight="some integer value according to your need"
于 2013-10-25T13:10:09.307 回答
0

您可以执行以下任一操作

  1. 大屏单独布局
  2. 使用 layout:weight 按钮。因此,按钮大小将根据屏幕大小设置。
于 2013-10-25T13:08:11.623 回答
0

只需制作一个单独的布局文件并将其放在文件夹中

“布局-xlarge”或“布局-大”

于 2013-10-25T13:08:45.337 回答
0

您可以为不同的屏幕密度创建不同的dimen.xml,这样您就可以只有一种布局来适应多个屏幕。

编辑:

您必须为不同的密度(values-mdpi、values-hdpi 等)创建几个文件夹,并在每个文件夹中创建一个 dimens.xml 。然后你像这样添加维度项目:

<dimen name="title_small_font_size">14sp</dimen>
<dimen name="header_title_font_size">32sp</dimen>

因此,在每个文件中,根据需要调整数字。然后,在您的按钮中设置按钮属性,例如:

android:textSize="@dimen/grid_title_text_size"

希望能帮助到你。

于 2013-10-25T13:09:28.377 回答
0

据我所知,在这里为按钮提供静态宽度和高度并不是一个好的选择。您所要做的就是为所有类型的手机和平板电脑尺寸的按钮创建一个背景图像,并将这些图像保存在适当的可绘制文件夹中,并尝试为按钮的文本提供 textAppearance,如下所示:

android:textAppearance="?android:attr/textAppearanceLarge" 
于 2013-10-25T13:11:21.940 回答
0

我复制并过去了我的布局文件夹,将其重命名为 layout-large(带有小 l),并接受了我所有的 xml 视图并更改了它们,它工作正常。谢谢!

于 2013-10-30T10:01:31.527 回答