小编Leo*_*bus的帖子

选择UITableViewCell选中标记更改

我是否正确地认为要将"on"的复选标记更改为"off",我必须更改CellAccessoryType之间none和之间checkmarkdidSelectRowAtIndexPath

因为我已经这样做但我注意到这个行为与iphone上自动锁定设置上的复选标记单元格完全相同.

或者还有其他一些方法可以处理检查标记吗?

iphone objective-c tablecell checkmark

47
推荐指数
4
解决办法
5万
查看次数

46
推荐指数
2
解决办法
3万
查看次数

如何使用Swift在文本字段(从右到左)输入货币格式?

我有一个数字可以说0.00.

  • 当用户点击1.我们应该 0.01
  • 当用户点击2.我们应该显示 0.12
  • 当用户点击3.我们应该显示 1.23
  • 当用户点击4.我们应该显示 12.34

我怎么能用Swift做到这一点?

uitextfield nsnumberformatter ios swift swift3

45
推荐指数
3
解决办法
3万
查看次数

如何将文本阴影应用于UITextView?

其实我爱UILabel.他们很甜蜜.现在我不得不去,UITextView因为UILabel没有垂直对齐文本到顶部.该死的.我真正需要的是文字阴影.UILabel有它.UITextView好像没有它.但我猜那家伙只是使用相同的底层UIKit NSString加法?也许有人已经有解决这个问题的方法?我会覆盖什么?

iphone uitextview ios

44
推荐指数
5
解决办法
2万
查看次数

任何在swift中停止块文字的方法

如下所示,我想通过类似的东西来阻止字面意思 break

var numbers = [1,2,3,4]
numbers.forEach {
    if $0 % 2 == 0 {
        break
    }
}
Run Code Online (Sandbox Code Playgroud)

swift

43
推荐指数
3
解决办法
3万
查看次数

如何在Swift中使用AVCaptureSession捕获图片?

我有一个UIViewController在我使用的AVCaptureSession显示相机和它工作得很好,速度快.我UIButton在此摄像机视图的顶部放置了一个对象,并IBAction为该按钮添加了一个对象.

这就是它现在的样子:

我的相机应用

现在我想在用户点击按钮时获取当前摄像机视图的图片:

@IBAction func takePicture(sender: AnyObject) {
    // omg, what do do?!
}
Run Code Online (Sandbox Code Playgroud)

我不知道如何做到这一点.我想象可能有类似的东西:

let captureSession = AVCaptureSession()
var myDearPicture = captureSession.takePicture() as UIImage // something like it?
Run Code Online (Sandbox Code Playgroud)

控制器代码的完整链接在这里https://gist.github.com/rodrigoalvesvieira/392d683435ee29305059,希望它有帮助

camera ios avcapturesession swift

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

计算两个CLLocationCoordinate2D之间的方位

非常"简单"的问题:给定两个CLLocationCoordinate2Ds,如何从第一个到第二个获得方位(以弧度为单位)?我已经做了很多研究和研究,特别是一般问题和Objective-C/Cocoa Touch/iOS.

这是我的实现:

- (float) getHeadingForDirectionFromCoordinate:(CLLocationCoordinate2D)fromLoc toCoordinate:(CLLocationCoordinate2D)toLoc
{
    float fLat = fromLoc.latitude;
    float fLng = fromLoc.longitude;
    float tLat = toLoc.latitude;
    float tLng = toLoc.longitude;

    return atan2(sin(fLng-tLng)*cos(tLat), cos(fLat)*sin(tLat)-sin(fLat)*cos(tLat)*cos(fLng-tLng));         
}
Run Code Online (Sandbox Code Playgroud)

但是,这种方法并没有为我返回一致的结果.如果轴承接近正北或正南,看起来很好,但是,任何其他方向似乎都会返回不一致的数据,例如:

从50.405018,8.437500

至51.339802,12.403340

我的方法返回:5.918441弧度

应该是1.18660576弧度

(见http://www.movable-type.co.uk/scripts/latlong.htmlhttp://www.movable-type.co.uk/scripts/latlong-map.html?lat1=50.405018&long1=8.437500 &lat2 = 51.339802&long2 = 12.403340)

我已经双重和三重检查公式是正确的.我也发现了一些像上面的例子一样的值,有些是正确的,有些是错的.我玩过各种模数或返回值的界限,也没有运气.

有任何想法吗?我的代码有问题吗?也许我误解了数学函数是如何工作的?

objective-c core-location coordinates ios

38
推荐指数
3
解决办法
2万
查看次数

强制施展真的很糟糕,应该总是避免吗?

我开始使用swiftLint并注意到Swift的最佳实践之一是避免使用强制转换.但是在处理tableView,collectionView for cells时我经常使用它:

let cell = collectionView.dequeueReusableCellWithReuseIdentifier(cellID, forIndexPath: indexPath) as! MyOffersViewCell
Run Code Online (Sandbox Code Playgroud)

如果这不是最好的做法,那么处理这个问题的正确方法是什么?我想我可以使用if with as?,但这是否意味着其他条件我需要返回一个空单元格?那可以接受吗?

if let cell = collectionView.dequeueReusableCellWithReuseIdentifier(cellID, forIndexPath: indexPath) as? MyOffersViewCell {
      // code
} else {
      // code
}
Run Code Online (Sandbox Code Playgroud)

uitableview tableview collectionview uicollectionviewcell swift

38
推荐指数
5
解决办法
2万
查看次数

保持窗口总是在顶部?

在Objective-C for Cocoa Apps中,可以使用这种方式使窗口始终保持最佳状态?

如何用Swift实现同样的目标?

self.view.window?.level = NSFloatingWindowLevel
Run Code Online (Sandbox Code Playgroud)

导致构建错误 Use of unresolved identifier 'NSFloatingWindowLevel'

macos nswindow swift swift2 swift3

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

NSNumberFormatter和'th''st''nd''rd'(序数)数字结尾

有没有办法使用NSNumberFormatter获得'th''st''nd''rd'数字结尾?

编辑:

看起来它不存在.这就是我正在使用的.

+(NSString*)ordinalNumberFormat:(NSInteger)num{
    NSString *ending;

    int ones = num % 10;
    int tens = floor(num / 10);
    tens = tens % 10;
    if(tens == 1){
        ending = @"th";
    }else {
        switch (ones) {
            case 1:
                ending = @"st";
                break;
            case 2:
                ending = @"nd";
                break;
            case 3:
                ending = @"rd";
                break;
            default:
                ending = @"th";
                break;
        }
    }
    return [NSString stringWithFormat:@"%d%@", num, ending];
}
Run Code Online (Sandbox Code Playgroud)

改编自nickf的答案这里 是否有一种简单的方法可以获得数字的"st","nd","rd"和"th"结尾?

objective-c nsnumberformatter ios

31
推荐指数
10
解决办法
2万
查看次数