• flutter MediaQuery获取屏幕宽度高度密度通知栏高度等屏幕信息


    MediaQuery是建立媒体查询解析给定数据的子树。
    例如,要了解当前媒体的大小(例如,包含您的应用程序的窗口),您可以从MediaQuery.of返回的MediaQueryData中读取MediaQueryData.size属性: MediaQuery.of(context).size 以上是官网说的。

    参数详解

    由于使用时是获取到MediaQueryData。所以只介绍MediaQueryData的属性

    属性 说明
    MediaQueryData
    size 一个包含宽度和高度的对象,单位是dp(乘以密度就是你设备的像素)
    devicePixelRatio 密度(像素比)
    textScaleFactor 每个逻辑像素的字体像素数
    platformBrightness 主机平台当前亮度模式
    viewInsets 完全被系统UI(通常是设备的键盘)遮挡的显示部分
    padding 我们通常取上边刘海高度和下边导航高度
    alwaysUse24HourFormat 格式化时间时是否使用24小时格式
    accessibleNavigation 用户是否使用TalkBack或VoiceOver等辅助功能服务与应用程序进行交互
    invertColors 设备是否反转平台的颜色
    disableAnimations 平台是否要求尽可能禁用或减少动画
    boldText 平台是否请求使用粗体字体重绘制文本

    代码示例

    //屏幕大小
        Size mSize = MediaQuery.of(context).size;
        //密度
        double mRatio = MediaQuery.of(context).devicePixelRatio;
        //设备像素
        double width = mSize.width * mRatio;
        double height = mSize.height * mRatio;
     
        // 上下边距 (主要用于 刘海  和  内置导航键)
        double topPadding = MediaQuery.of(context).padding.top;
        double bottomPadding = MediaQuery.of(context).padding.bottom;
     
        double textScaleFactor = MediaQuery.of(context).textScaleFactor;
        Brightness platformBrightness = MediaQuery.of(context).platformBrightness;
        EdgeInsets viewInsets = MediaQuery.of(context).viewInsets;
        EdgeInsets padding = MediaQuery.of(context).padding;
        bool alwaysUse24HourFormat = MediaQuery.of(context).alwaysUse24HourFormat;
        bool accessibleNavigation = MediaQuery.of(context).accessibleNavigation;
        bool invertColors = MediaQuery.of(context).invertColors;
        bool disableAnimations = MediaQuery.of(context).disableAnimations;
        bool boldText = MediaQuery.of(context).boldText;

    效果图如下:

  • 相关阅读:
    Android 拍照 代码实例
    利用Android手机里的摄像头进行拍照
    看视频时,类加载器没太理解,现在再整理下几个要点
    关于java设计模式与极品飞车游戏的思考
    【Mood-3】心声
    源自梦想 eclipse快捷键整理
    2020重新出发,JAVA语言,JAVA的诞生和发展史
    2020重新出发,序章: 语言的诞生
    2020重新出发,JAVA学前了解,DOS常用命令
    2020重新出发,JAVA学前了解,Windosws常用快捷键
  • 原文地址:https://www.cnblogs.com/maqingyuan/p/13839566.html
Copyright © 2020-2023  润新知