• 3327
    2019-08-06
    1. 使用2.0x图片,优先使用和当前像素密度相近的资源
    2.找2.0x图片,按分辨率由低到高找

    作者回复: 对

    
     6
  • Geek_45a2f1
    2019-08-14
    老师,我发现直接在drawable里面设置启动图,限制太大,于是就声明了一个widget,但是在APP启动的时候还是有白屏,请问有什么方法解决呢

    作者回复: Flutter需要借助于原生Android/iOS的运行环境,所以在引擎初始化之前的那部分工作(比如启动图、App图标、App名字),Flutter是搞不定的,必须要回到原生的工程中去实现

    
     3
  • 亡命之徒
    2019-08-06
    对于像素密度3.0x的会找到2.0x的图片,对于2.0x的像素密度,1.0会自动压缩处理

    作者回复: 赞

    
     2
  • (Jet)黄仲平
    2020-02-05
    “如果我们的 App 包只包括了 2.0x 资源,对于屏幕像素比为 3.0 的设备,则会自动降级读取 2.0x 的资源”
    问一个小白的问题,就是我们如何判断Flutter 使用是1倍图,还是2倍图,还是3倍图,感觉肉眼很难看清
    
    
  • 杨闯
    2020-01-09
    如果我做的是一个插件,我要访问获取插件下的bundle,我需要怎么获取
    
    
  • 拼命的小贝壳
    2019-11-28
    老师,启动icon为什么不在flutter本工程内增加一个配置,运行前编译到原生工程内?

    作者回复: 这个思路是可行的,我猜Flutter不这么做可能是想从设计层面保持Flutter工程和iOS/Android工程的独立性和简单性。毕竟Flutter只是一个应用层的框架,除了启动图、应用图标之外,像应用的配置、多语言环境、签名证书、设备配置这些东西是必须通过原生工程搞定的。通过脚本同步固然可行,但从框架层面考虑,Flutter不太可能只考虑一两个应用配置的迁移同步,必须要给出一个在Flutter内闭环的完整应用配置同步方案,后续随着原生开发环境的升级,维护和适配的工作量不会低的。

    
    
  • Captain
    2019-11-19
    目录批量指定并不递归,只有在该目录下的文件才可以被包括,如果下面还有子目录的话,需要单独声明子目录下的文件。 这句话 能举例说明么?

    作者回复: 就是挨个单独声明子目录,或者单独声明子目录下的文件啊

    
    
  • 巫
    2019-10-22
    以为 Android 和 iOS 的都是生成的,可以加到 gitignore 中,看来不行啊。那哪些可以忽略呢?

    作者回复: 普通flutter工程的ios和android目录不能忽略,module工程可以

    
    
  • 🌝
    2019-10-19
    目录批量指定的话,需不需要把2.0x、3.0x的目录再指定一遍?

    作者回复: 你可以试试看

     1
    
  • jerry
    2019-10-17
    3.0像素密度的机器,使用1.0密度的图片,会放大吗

    作者回复: 看你这个坑位有多大了,如果不设坑位大小,会按照实际比例去填

    
    
  • zjhuang
    2019-10-16
    pubspec.yaml 可以直接将图片资源文件指定到 Android 的 mipmap-xhdpi 中吗?此时该目录下的资源 Flutter 会当成是 1.0x 的还是 2.0x 的

    作者回复: 不可以

    
    
  • 承香墨影
    2019-10-01
    老师,您好。有 2 个疑问,希望您能解答。
    1. Flutter 中加载图片,会对图片的尺寸做优化吗?例如同一张 50x50 的图片,显示在两个不同尺寸的 Image 上,例如 20x20 和 40x40 的 Image,它们在内存中是一份还是两份数据? 然后在内存中占用的内存尺寸,是如何计算的?是按照原图的尺寸和它所存放的位置来计算的,还是依赖加载 Widget 的尺寸?
    2. 如果是网络图片,又是如何处理的?会和 Android 的 Glide 之类的图片库一样,对其进行采样率的压缩吗?

    作者回复: 1.原始图片数据是一份(bitmap大小),渲染数据是两份(按加载widget尺寸算压缩后的bitmap大小)。
    2.同1

    你可以自己试验一下,用Dart DevTools中的Memory工具

    
    
  • 和小胖
    2019-09-04
    老师好,请问下关于字体那块,本质上还是配了 3 种字体是吧?如果只用一种字体是不是也可以进行加粗倾斜的设置呢?

    作者回复: 1.对
    2.TextStyle中有fontWeight和fontStyle属性,可以为普通字体设置粗体和斜体,不过有些字体不支持

    
    
  • Geek_neterM
    2019-08-30
    对于android的启动图,设置之后,就在当前目录放置图片嘛? 那么格式是什么?另外,启动图,是不是也要像 启动图标那样,设置 mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi?

    作者回复: 1.在mipmap目录或者drawable都行;
    2.对

     1
    
  • Norman
    2019-08-29
    老师您好,我在加载网络图片的时候,网络图片一直加载不出来,并且报这样的错误信息OS Error: nodename nor servname provided, or not known,
    errno = 8
    请问这是为什么呀?

    作者回复: 检查一下网络权限

    
    
  • Geek_614299
    2019-08-27
    1.0x、2.0x、3.0x分别对应多大的分辨率?有标准吗?

    作者回复: 不是对应分辨率,是对于像素密度。具体可以参考这个网站:https://material.io/resources/devices/

    
    
  • Yolo七夜
    2019-08-13
    get到批量声明的技能,嘿嘿
    
    
  • Norman
    2019-08-12
    所以,思考题的答案是什么呢老师?文章中有一句话,如果主资源缺少某个分辨率资源,那么会在剩余资源中寻找最低的分辨率资源去加载,按照这个说法,第一个问题的答案是1.0x。但是我又总感觉这不符合常理,按道理如果找不到3.0x,难道不应该是加载2.0x吗?

    作者回复: 早期的Flutter版本会在缺少分辨率资源时,一刀切直接使用最低的分辨率资源,最近几个版本已经调整为使用最合适的分辨率资源了,我也把这部分内容更新了。所以你的猜测是对的,找不到3.0x会继续使用2.0x的资源

    
    
  • Geek_98a104
    2019-08-08
    老师,批量声明报错 是什么原因啊?

    作者回复: 看下是不是空格缩进有问题

     1
    
  • Mr.J
    2019-08-08
    1、1.0x,因为3.0x的资源不存在,所以在存在的资源中查找分别率最低的资源,即1.0x;
    2、2.0x,因为1.0x的资源不存在,找剩下的分辨率最低的,只有2.0x,所以选择2.0x;

    作者回复: 早期的Flutter版本会在缺少分辨率资源时,一刀切直接使用最低的分辨率资源,最近几个版本已经调整为使用最合适的分辨率资源了,我也把这部分内容更新了。所以答案都是会找2.0x的资源

    
    
我们在线,来聊聊吧