小编iam*_*ish的帖子

当我们可以使用数组在swift中返回多个值时,为什么要使用元组

今天我只是通过一些基本的快速概念,并正在使用一些例子来理解这些概念.现在我已经完成了元组学习.

我有一个疑问,即使用元组需要什么?我在这里做了一些挖掘,这就是我得到的:

我们可以从函数中返回多个值.好的,但我们也可以通过返回一个数组来做到这一点.

数组好,但我们可以返回不同类型的多个值.好的很酷,但这也可以通过AnyObject数组完成,如下所示:

    func calculateStatistics (scores:[Int])->[AnyObject]
{
    var min = scores[0]
    var max = scores[0]
    var sum = 0

    for score in scores
    {
        if score > max{
            max = score
        }
        else if score < min{
            min = score
        }
        sum += score
    }
    return [min,max,"Hello"]
}

let statistics = calculateStatistics([25,39,78,66,74,80])

var min = statistics[0]
var max = statistics[1]
var msg = statistics[2] // Contains hello
Run Code Online (Sandbox Code Playgroud)

我们可以命名元组中存在的对象.好的,但我可以使用AnyObject的字典.

我不是说为什么在我们得到这个时使用元组.但是应该有一些只有元组可以做到的东西,或者只有元组才能做到这一点.而且,如果没有充分的理由,创造swift的人就不会迅速参与元组.所以应该有一些很好的理由让他们参与其中.

所以大家请告诉我,如果有任何特定情况,元组是最好的选择.

提前致谢.

tuples ios swift ios8

27
推荐指数
3
解决办法
9623
查看次数

为什么有些奥特莱斯是强有力的参考,即使文件规定出口应该是弱参考

嗨,我是iOS编程的新手.我知道强弱的参考是什么.但是当我不得不处理插座时,我会混淆使用哪种类型的参考.经过文件说明

Outlets通常应该是弱的,除了那些从File的Owner到nib文件中的顶级对象(或者在iOS中,故事板场景中)应该很强大.

所以我在完成上述陈述后理解的是,我们创建奥特莱斯默认情况下通常应该很弱.

但是在学习一些教程的过程中,我遇到了一些代码,人们已经宣称这个代码是强有力的参考.例如,请考虑以下代码:

@interface AboutViewController : UIViewController

@property (nonatomic, strong) IBOutlet UIWebView *webView;

@end
Run Code Online (Sandbox Code Playgroud)

代码 :

@property (nonatomic, strong) IBOutlet UIWebView *webView;
Run Code Online (Sandbox Code Playgroud)

说我们的AboutViewController有一个UIWebView对象.

但是为什么我们需要一个强大的UIView对象参考?正如文件所述,这不应该是一个弱的参考?

另外,请在上面引用的文档声明中解释文件所有者对顶级对象的含义是什么?

我在这个网站上经历了很多类似的问题,但没有一个能帮我清除疑虑.所以请帮忙.提前致谢 :)

objective-c iboutlet ios

12
推荐指数
2
解决办法
1278
查看次数

通用链接(深层链接)不适用于iPhone,但适用于iPad

我正在尝试在我的应用中构建深层链接功能.我为深度链接做了所有必要的设置工作,例如,在我的应用中启用相关域,将apple-app-site-association添加到我的服务器的根目录,我正在提供有效的apple-app-site-association通过https,我还使用此工具验证了我的apple-app-site-association 验证你的apple-app-site-association.

在做完一切之后,我测试了iPad上的深层连接功能,它按预期工作.但是,当我试图在我的iPhone上做同样的事情时它不起作用,它总是带我去野生动物园.我在6s设备上尝试过,我重新安装了应用程序,我清除了Safari网站数据并清除了历史记录.还将iPhone和iPad更新为iOS 9.3.5.更新操作系统并没有改变一件事.

iPad仍然继续使用深层链接URL,就像它在9.3.4上一样.iPhone仍在Safari中打开链接.

请给我一些关于如何解决这个问题的指示,我认为这可能是一个苹果错误,但我又不明白它如何在iPad上运行与iPhone运行相同的软件.非常感谢任何帮助或指导.

谢谢.

deep-linking ios ios-universal-links

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

单个购物车文件为多个目标指定和安装依赖项

有没有办法编写一个单独的购物车文件,该文件可用于安装多个目标所需的依赖项。这可以在我们使用 Cocoapods 时实现,如下所示:

# Uncomment the next line to define a global platform for your project
platform :ios, '11.0'

def rx_swift
    pod 'RxSwift', '~> 4.0'
end

def rx_cocoa
    pod 'RxCocoa', '~> 4.0'
end

def test_pods
    pod 'RxTest'
    pod 'RxBlocking'
    pod 'Nimble'
end


target 'CleanArchitectureRxSwift' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!
  rx_cocoa
  rx_swift
  pod 'QueryKit'
  target 'CleanArchitectureRxSwiftTests' do
    inherit! :search_paths
    test_pods
  end

end

target 'CoreDataPlatform' do
  # Comment …
Run Code Online (Sandbox Code Playgroud)

ios swift carthage

4
推荐指数
1
解决办法
373
查看次数

如何设置UISearchBar占位符的文本颜色

我有一个深色背景颜色的UISearchBar所以我试图改变UISearchBar的占位符文本颜色(默认情况下它将是灰色的)但我没有找到设置它的方法.所以我想得到一些帮助:)请建议我如何实现这一点,提前谢谢:)

objective-c uisearchbar ios

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