【问题标题】:SDL2 - Detect "tablet" vs. "phone" or screen sizeSDL2 - 检测“平板电脑”与“手机”或屏幕尺寸
【发布时间】:2015-09-17 20:25:28
【问题描述】:

在 SDL2 中 - 是否有检测平板电脑与手机或确定屏幕尺寸(物理屏幕尺寸 --- 英寸/厘米/等)的好方法?

我想检测小屏幕并放大按钮大小。

我正在寻找这样做的 SDL2 方式,最好是,因为设备是 Android/iPhone/等都没有关系。

【问题讨论】:

    标签: android iphone c android-ndk sdl-2


    【解决方案1】:

    查看此 SDL2 函数:https://wiki.libsdl.org/SDL_GetDisplayDPI

    通过获取分辨率和物理DPI,可以得到屏幕尺寸,单位为英寸。

    您的具体问题在他们的错误跟踪器上讨论:

    https://bugzilla.libsdl.org/show_bug.cgi?id=2473

    有一些较旧的 SO 问题空手而归:iOS get physical screen size programmatically?

    【讨论】:

    • 谢谢!这正是我正在寻找的 API,但找不到。 API 看起来很新,我确信我可以围绕 iOS 限制进行编码,其中有 [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone 等。
    • 是的,在我寻找它之前我不知道它存在——不过要小心,它在文档中说它只有在“如果 dpi 信息可用”时才有效,所以你可能需要一些后备计划什么的
    • 我已经断断续续地使用 SDL 好几年了。最近(即 SDL2),它们非常具有前瞻性。变更日志中经常有令人惊喜的惊喜(例如,一个出色的 Android 阻塞“消息框”——为 Android 编写一个阻塞消息框是一场噩梦,Android 向后弯腰使其几乎不可能)。但是像许多快速发展的项目一样,文档很薄,尤其是在前沿。在 StackOverflow 上找到答案比在 SDL2 论坛上要容易 10 倍。
    • 嗯,当我使用 SDL_GetDisplayDPI 时,我在 sdl 版本 2.0.5 的 android 手机上收到“不支持该操作”错误。我想知道为什么。
    猜你喜欢
    • 1970-01-01
    • 2012-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    • 2011-09-29
    相关资源
    最近更新 更多