小编Doe*_*Doe的帖子

为什么UICollectionView didSelect方法不起作用?

我已经以UICollectionView编程方式创建了我的didSelectItemAtIndexPath方法,在这种情况下,我的方法根本不会调用。

let collectionView = UICollectionView(frame: CGRect(x: 0, y: 0, width: CGRectGetWidth(self.view.frame), height: 360), collectionViewLayout: layout)
collectionView.delegate = self
collectionView.dataSource = self
collectionView.userInteractionEnabled = true
Run Code Online (Sandbox Code Playgroud)

那么,有什么问题呢?为什么当我点击单元格时我没有得到回应?

func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
    print("Selected Cell: \(indexPath.row)")
}
Run Code Online (Sandbox Code Playgroud)

ios uicollectionview uicollectionviewcell swift

4
推荐指数
3
解决办法
4878
查看次数

如何为Alamofire请求函数编写单元测试?

我有一个项目,我发送.GET请求从服务器获取数据,为此我使用Alamofire和SwiftyJSON.

例如:

我有文件"链接","请求"和我的ViewController.

Links.swift

var getAllData: String {
    return "\(host)api/getalldata"
}
Run Code Online (Sandbox Code Playgroud)

Requests.swift

func getAllData(_ completion:@escaping (_ json: JSON?) -> Void) {
    Alamofire.request(Links.sharedInstance.getAllData).validate().responseJSON { (response) in
        do {
            let json = JSON(data: response.data!)
            completion(json)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

视图控制器

Requests.sharedInstance.getAllData { (json) in
    // ...
}
Run Code Online (Sandbox Code Playgroud)

那么,我怎样才能为这个案例编写单元测试?我刚刚学习单元测试,在所有书籍中只有本地案例,没有网络案例的例子.请允许任何人描述我并帮助如何使用Alamofire和SwiftyJSON编写网络请求的单元测试?

unit-testing ios swift alamofire swifty-json

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

为什么iOS CLLocation显示不正确的值?

我正在尝试计算2个坐标之间的距离.为此我做:

func setupLocationManager() {
    if CLLocationManager.authorizationStatus() == .NotDetermined {
        locationManager.requestWhenInUseAuthorization()
    }

    locationManager.delegate = self
    locationManager.desiredAccuracy = kCLLocationAccuracyBest
    locationManager.startUpdatingLocation()
}

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    let latitude = locations.last?.coordinate.latitude
    let longitude = locations.last?.coordinate.longitude

    let myLocation = CLLocation(latitude: latitude!, longitude: longitude!)
    let targetLocation = CLLocation(latitude: 41.4381022, longitude: 46.604910)

    let distance = myLocation.distanceFromLocation(targetLocation)
    print(distance)
}
Run Code Online (Sandbox Code Playgroud)

我正在检查谷歌地图有13公里的距离!但我的应用程序显示我2-3公里!

我怎样才能改善这一点?

coordinates cllocationmanager ios swift

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

这条线在Swift中意味着什么?

我现在正在阅读Swift 3书,并在那里发现了这一行:

func sumOf(numbers: Int...) -> Int {

}
Run Code Online (Sandbox Code Playgroud)

而且只有这样的描述:

Functions can also take a variable number of arguments, collecting them into an array.
Run Code Online (Sandbox Code Playgroud)

我没有得到那(numbers: Int...)意味着什么.有人可以解释一下吗?

ios swift

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

如何在 Swift 中添加半径为 2pt 的模糊?

我想创造这样的东西:

在此处输入图片说明

我试过这个:

var blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark)
var blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.frame = view.bounds
view.addSubview(blurEffectView)
Run Code Online (Sandbox Code Playgroud)

但这会造成非常暗的模糊。但我需要半径为 2pt 的完全暗模糊(黑色)。

我可以在 Swift 中实现吗?

ios swift uiblureffect

0
推荐指数
1
解决办法
5140
查看次数