是否可以将一些按钮放在可变行的线性或相对布局中?
Is it possible to put some Buttons in a Linear or Relative Layout in variable rows?
我只想有一种布局。在这个布局中有一个线性或相对布局,我在其中放置了一些按钮。
如果设备很小,我的按钮不适合 LinearLayout,其中一些会超出 activity 并且不可见,如下所示:
我想做一些事情,当设备屏幕很小时,额外的按钮会自动转到第二行,如下所示:
可能吗? LinearLayout 或 RelativeLayout 中是否有满足这种需求的属性?
使用网格视图。并将 Button 添加到 GridView 中。
您的另一个选择是尝试 android-flowlayout 图书馆
您可以在 运行 时间用这样的东西检查每个设备的屏幕尺寸
`
int screenSize = getResources().getConfiguration().screenLayout
// & Configuration.SCREENLAYOUT_SIZE_MASK;
//
// switch (screenSize) {
// case Configuration.SCREENLAYOUT_SIZE_LARGE:
// Do something for Large Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_NORMAL:
// Do something for Normal Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_XLARGE:
// Do something for XLarge Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_UNDEFINED:
// Do something for Undefined Screens like televisions or something
// break;
// case Configuration.SCREENLAYOUT_SIZE_SMALL:
// Do something for small Screens
// break;
// default:
// Do something for default Screens if all else fails
// }`
请原谅这些评论,但这是在 运行 时间 activity 中实现具有不同要求的不同观点的一种方式。另请注意,您可以简单地执行类似
的操作
android:lines="1"
android:maxLines="1"
android:maxLength="20"
要强制 Textview 始终为一行或 maxLines 或长度为 20,请自行选择
更好的方法是为每个设备的屏幕尺寸构建一个独特的布局,以确保每件事都在正确的位置。
您只需要在您的资源中添加以下文件夹:
layout-small
layout
layout-large
layout-xlarge
layout-sw600dp
layout-sw720dp
并开始为这些屏幕中的每一个进行设计。
欲了解更多信息:supporting multiple screens
我只想有一种布局。在这个布局中有一个线性或相对布局,我在其中放置了一些按钮。
如果设备很小,我的按钮不适合 LinearLayout,其中一些会超出 activity 并且不可见,如下所示:
我想做一些事情,当设备屏幕很小时,额外的按钮会自动转到第二行,如下所示:
可能吗? LinearLayout 或 RelativeLayout 中是否有满足这种需求的属性?
使用网格视图。并将 Button 添加到 GridView 中。
您的另一个选择是尝试 android-flowlayout 图书馆
您可以在 运行 时间用这样的东西检查每个设备的屏幕尺寸
`
int screenSize = getResources().getConfiguration().screenLayout
// & Configuration.SCREENLAYOUT_SIZE_MASK;
//
// switch (screenSize) {
// case Configuration.SCREENLAYOUT_SIZE_LARGE:
// Do something for Large Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_NORMAL:
// Do something for Normal Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_XLARGE:
// Do something for XLarge Screens
// break;
// case Configuration.SCREENLAYOUT_SIZE_UNDEFINED:
// Do something for Undefined Screens like televisions or something
// break;
// case Configuration.SCREENLAYOUT_SIZE_SMALL:
// Do something for small Screens
// break;
// default:
// Do something for default Screens if all else fails
// }`
请原谅这些评论,但这是在 运行 时间 activity 中实现具有不同要求的不同观点的一种方式。另请注意,您可以简单地执行类似
的操作 android:lines="1"
android:maxLines="1"
android:maxLength="20"
要强制 Textview 始终为一行或 maxLines 或长度为 20,请自行选择
更好的方法是为每个设备的屏幕尺寸构建一个独特的布局,以确保每件事都在正确的位置。
您只需要在您的资源中添加以下文件夹:
layout-small
layout
layout-large
layout-xlarge
layout-sw600dp
layout-sw720dp
并开始为这些屏幕中的每一个进行设计。 欲了解更多信息:supporting multiple screens