android - 以编程方式膨胀特定于屏幕的布局
问题描述
是否可以以编程方式膨胀screen-specific
布局?
我有 2 个相同屏幕的布局,其中之一是sw600dp
,对于我想使用的平板电脑横向,sw600dp
但对于我想使用默认的平板电脑纵向layout
,因为我的屏幕分成 2 个片段。
因为平板电脑很大,横向和纵向都大于 600dp。
解决方案
如果您知道屏幕尺寸,那么您可以从“使用布局别名” https://developer.android.com/training/multiscreen/screensizes中的示例中获取灵感 (滚动到“使用布局别名”部分)
为避免同一文件的重复,您可以使用别名文件。例如,您可以定义以下布局:
res/layout/main.xml # single-pane layout
res/layout/main_twopanes.xml # two-pane layout
基本上,不要将它们放在不同的布局文件夹中,只需将它们命名不同并将所有布局放在默认布局文件夹中即可。
对于您的情况,既然您想以编程方式进行操作,那么只需检查您的屏幕尺寸 > xxx 尺寸,膨胀更大的布局。
所以你最终可能会得到如下文件
res/layout/main_sw320.xml
res/layout/main.xml
res/layout/main_sw600.xml
推荐阅读
- sql - TFS2015 - 列出所有用户和与其所有者共享的查询
- javascript - 由 var 分隔的嵌套选择失败
- ios - 如何在 Iphone 6 上扫描不宣传名称的 BLE 设备
- python-2.7 - 如何有效地从 Python 中的一个非常大的集合中获取随机样本
- python - 抛出 ZeroDivisionError
- ios - ContainerView - 如何关闭不可见视图
- json - Dialogflow 无法解析来自我的 webhook 的 JSON 响应似乎更改了字符编码
- javascript - 在phonegap应用程序中的android键盘弹出窗口上停止页脚移动
- mysql - Rest API:使用 ExpressJS 将值插入 MySQL 数据库
- java - 缩短 JLabels 的 switch case 方法