Android:如何允许基于设备的定位
我正在开发一个Android应用程序,我想支持所有大小的设备,从手机到全尺寸平板电脑。我想将应用程序限制为仅在较小的设备上使用纵向,并允许在设备较大时在横向中使用不同的、更大屏幕友好的UI。到目前为止,我找不到任何方法,更不用说优雅的方法,来限制活动允许基于设备屏幕大小的方向 一个例子是:运行应用程序的智能手机只允许使用layout small和layout normal中的布局资源,而不允许使用横向布局。更大的平板设备可以使用更大屏幕友好的UI,并且允许在纵向和横向中使用,每个方向都有唯一的UIAndroid:如何允许基于设备的定位,android,layout,orientation,device,screen-size,Android,Layout,Orientation,Device,Screen Size,我正在开发一个Android应用程序,我想支持所有大小的设备,从手机到全尺寸平板电脑。我想将应用程序限制为仅在较小的设备上使用纵向,并允许在设备较大时在横向中使用不同的、更大屏幕友好的UI。到目前为止,我找不到任何方法,更不用说优雅的方法,来限制活动允许基于设备屏幕大小的方向 一个例子是:运行应用程序的智能手机只允许使用layout small和layout normal中的布局资源,而不允许使用横向布局。更大的平板设备可以使用更大屏幕友好的UI,并且允许在纵向和横向中使用,每个方向都有唯一的U
任何提示都将不胜感激。要强制活动进入纵向模式,您可以在Android清单中进行设置,但这样您就无法为较小的屏幕指定,我认为这是不可能的。此外,你应该小心这样做,因为某些手机是为横向模式。 要为特定屏幕尺寸提供替代布局,可以通过在文件夹名称中添加参数来实现
/res/layout-small/main.xml
/res/layout-normal/main.xml
/res/layout-large/main.xml
/res/layout-xlarge/main.xml
您可以尝试使用以下方法以编程方式获取屏幕大小:
int width = display.getWidth();
int height = display.getHeight();
然后根据屏幕大小是否在特定边界之间允许/不允许?display.getWidth()不推荐使用。改为使用displayMetrics.widthPixels。