小编Dur*_*rdu的帖子

在Swift中,为什么"让_ = this"比"this!= nil"更快?

所以我的问题是为什么let _ = this更快this != nil呢?

例:

这是:

let this : Bool? = true //

let start = DispatchTime.now()
for _ in 0...100000000  {
    guard this != nil else { continue }
}
let end = DispatchTime.now()

let nanoTime = end.uptimeNanoseconds - start.uptimeNanoseconds
let timeInterval = Double(nanoTime)
print("Time \(timeInterval)") 

         // Time 5426559135.0
         // Time 5428084767.0
         // Time 5327325459.0
Run Code Online (Sandbox Code Playgroud)

慢于:

let this : Bool? = true //

let start = DispatchTime.now()
for _ in 0...100000000  {
    guard …
Run Code Online (Sandbox Code Playgroud)

xcode syntactic-sugar ios swift

6
推荐指数
1
解决办法
525
查看次数

Flutter 加载 HTML 的本地资源

我通过以下方式使用flutter_webview包将本地 HTML文件加载到小部件中:

FutureBuilder<String>(
  future: LocalLoader().loadLocal(),
  builder: (context, snapshot) {
    if (snapshot.hasData) {
//      return Text("${snapshot.data}");
      return WebView(
        initialUrl: new Uri.dataFromString(snapshot.data, mimeType: 'text/html').toString(),
        javascriptMode: JavascriptMode.unrestricted,
      );

    } else if (snapshot.hasError) {
      return Text("${snapshot.error}");
    }
    return CircularProgressIndicator();
  }
)
Run Code Online (Sandbox Code Playgroud)

它加载 HTML 就好了,但如果标签指向其他资源(例如同一位置的 CSS 文件或其他本地图像),它们将不会显示在 webview 中。

这些资产(CSS 和图像文件)被添加到项目中指定的 HTML 路径(相对本地路径)和pubspec中的位置。

例如,其中一个 HTML 文件包含此元素:

<link rel=stylesheet href=styles/main.css>
Run Code Online (Sandbox Code Playgroud)

当 HTML 文件在 webview 中加载时,CSS 不会反映该页面的样式。如果我在 HTML 中手动添加/编写 CSS(使用<style>元素来定义它),它将正常工作。

关于如何让这些 HTML 加载其本地资源的任何建议?(即使这意味着改变包或它的实现方式)

也贴在这里

assets flutter flutterwebviewplugin

6
推荐指数
1
解决办法
4653
查看次数

如何在 Xcode 中列出一个目标的所有文件

是否有一个 XC 命令可以用来列出一个目标的所有文件?

在此输入图像描述

xcode ios

5
推荐指数
1
解决办法
1141
查看次数

如何获取xcode派生的数据路径

有没有一种方法可以通过一些bash命令检索Xcode DerivedData文件夹的路径?

通常是这样的

/Users/ThisGuy/Library/Developer/Xcode/DerivedData/*
Run Code Online (Sandbox Code Playgroud)

我可以用替换

/Users/$USER/Library/Developer/Xcode/DerivedData/*
Run Code Online (Sandbox Code Playgroud)

但这不能保证导出数据位置的路径实际上就是该路径(用户可能已将其更改为相对路径或自定义路径)

xcode

4
推荐指数
2
解决办法
944
查看次数

将来使用catchError捕获错误并抛出另一种类型

我不确定这种错误处理和抽象是否以错误的方式完成。

Future<void> _refresh() {
  return Future(() => throw someError)
       .catchError((error) {
         // maybe do something here
         throw abstractedError; //or even the same error
      });
Run Code Online (Sandbox Code Playgroud)

能够在另一个地方相应地使用它:

// in a widget/another place

void doSomething() { 
   _refresh()
     .then((_) => bla())
     .catchError((error) {
      //showSomeAlert() or handleSomething()
  });
}
Run Code Online (Sandbox Code Playgroud)

android ios dart flutter

4
推荐指数
2
解决办法
2587
查看次数

扩展中有网点

为什么在ViewController的扩展中无法提供视图的出口是什么原因?

在和是同一xib引用的同一类中。

如Apple 的快速指南中所述:

Swift中的扩展可以:

添加计算实例属性和计算类型属性

定义实例方法和类型方法

提供新的初始化器

定义下标

定义和使用新的嵌套类型

使现有类型符合协议

我认为,正如注释中所建议的那样,它必须与内存有关。尽管新的存储属性将增加该对象的内存,但计算的属性不会。

xcode ios swift

2
推荐指数
1
解决办法
902
查看次数