0

我正在设计一个应用程序,并且我在表格布局中显示了几个按钮。我有两台设备可以测试应用程序。一个是三星 Galaxy Tab 1,另一个是三星 Galaxy Ace。我在 android manifest 文件中使用了以下内容来允许调整大小。

<supports-screens 
android:resizeable="true" 
android:smallScreens="true" 
android:normalScreens="true" 
android:xlargeScreens="true" 
android:anyDensity="true" />  

所有的按钮也有

android:layout_weight="1".

这允许他们占用显示器上额外的可用空白空间。这在标签上工作正常,但在手机上一些按钮会换行。即“按钮”一词显示在 2 行上。我希望按钮自行调整大小,以便在任何显示器上都没有按钮按高度包装。有人可以告诉我如何实现这一目标吗?哦,该应用程序是为 android 2.3.3 开发的。

4

1 回答 1

2

有两种实现方式:

(1) 将大小合适的图片放入xhdpi、hdpi、mdpi、ldpi文件夹。设备将根据其分辨率自动从这些文件夹中获取图像。

(2) 您还可以动态检测设备的分辨率,然后相应地设置布局,如下所示:

    DisplayMetrics displayMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    switch(displayMetrics.densityDpi){ 
        case DisplayMetrics.DENSITY_LOW: 
            // layout for small devices.
            break; 
        case DisplayMetrics.DENSITY_MEDIUM: 
            // layout for medium devices.
            break; 
        case DisplayMetrics.DENSITY_HIGH: 
            // layout for bigger devices.
            break; 
    } 
于 2012-06-22T06:38:23.380 回答