【问题标题】:Fix orientation of screen on tablet and phone修复平板电脑和手机上的屏幕方向
【发布时间】:2016-01-07 13:27:18
【问题描述】:

在我的 cordova 应用程序中,我在 config.xml 中修复了方向,例如:

<preference name="orientation" value="landscape"/>

这适用于平板电脑。

现在,如果设备宽度

所以:平板电脑的视图将是横向的,而手机的视图将是纵向的。

你有什么解决办法吗?

感谢您的帮助。

【问题讨论】:

    标签: android cordova phonegap-build cordova-2.0.0


    【解决方案1】:

    如果您想根据检测到的设备宽度在 Android 上改变方向,则需要在应用运行时执行此操作,因此您需要从 config.xml 中删除方向首选项。 您可以使用cordova-plugin-screen-orientation 插件在您的应用程序中设置设备方向,例如:

    var MAX_WIDTH = 767;
    $(document).on("deviceready", function(){
        if($(window).width() < MAX_WIDTH || $(window).height() < MAX_WIDTH){
            screen.lockOrientation('portrait');
        }else{
            screen.lockOrientation('landscape');
        }
    });
    

    使用像素尺寸来确定设备是否为平板电脑并不是很可靠 - 具有高分辨率屏幕的较新 Android 手机将报告屏幕宽度 > 767 像素。 所以也许可以考虑使用phonegap-istablet插件来确定设备是否是平板电脑:

    $(document).on("deviceready", function(){
        if(window.isTablet){
            screen.lockOrientation('landscape');
        }else{
            screen.lockOrientation('portrait');
        }
    });
    

    【讨论】:

    • 这正是我想要的。谢谢@DaveAlden
    • 我知道这是旧的,但是当应用程序准备好时,方向的变化将应用。有没有办法在应用启动时设置它?在 config.xml 中设置?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-09
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多