小编Enl*_*lil的帖子

Swift交换数组对象

我无法在细胞重新排序上交换字符串数组

var scatola : [String] = []

override func tableView(tableView: UITableView, moveRowAtIndexPath fromIndexPath: NSIndexPath, toIndexPath: NSIndexPath) {
        swap(&scatola[fromIndexPath.row], &scatola[toIndexPath.row])
    }
Run Code Online (Sandbox Code Playgroud)

此代码抛出:inout回写计算属性'scatola'发生在多个要调用的参数中,引入无效别名

什么是正确的方法呢?

arrays uitableview swift

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

播放从保存的持久列表中检索的iPod播放列表

我保存了使用媒体选择器选择的歌曲的持久ID,现在我正在尝试创建队列以播放该列表,但此代码中存在错误:

myPlayer = [MPMusicPlayerController applicationMusicPlayer];

    NSMutableArray *canzonilist = [[[NSMutableArray alloc] initWithCapacity:1] retain];
    NSData *data = [[NSUserDefaults standardUserDefaults] objectForKey:@"listaCanzoni"];
    NSArray *decodedData = [NSKeyedUnarchiver unarchiveObjectWithData:data];
    [canzonilist addObjectsFromArray:decodedData];

    MPMediaQuery *songQuery = [MPMediaQuery songsQuery];
    for (int i = 0; i > [canzonilist count]; i++) {
        [songQuery addFilterPredicate:[MPMediaPropertyPredicate predicateWithValue:[canzonilist objectAtIndex:i] forProperty:MPMediaItemPropertyPersistentID]];
    }
    NSArray *songs = [songQuery items];
    MPMediaItemCollection *currentQueue = [[MPMediaItemCollection alloc] initWithItems:songs];

    if (currentQueue != nil) {    
        [myPlayer setQueueWithItemCollection:currentQueue];
    } else {
        [myPlayer setQueueWithQuery: [MPMediaQuery songsQuery]];
    }

    [myPlayer play];
    [canzonilist release];
    [currentQueue release];
Run Code Online (Sandbox Code Playgroud)

谢谢

iphone objective-c

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

如何知道浮点数是否有小数

我正在为教室构建一个简单的计算器,这是显示结果的代码:

- (void)doTheMathForPlus:(float)val {
    float conto = self.contBox + val;
    self.myDisplay.text = [NSString stringWithFormat:@"%.02f", conto];
}
Run Code Online (Sandbox Code Playgroud)

我需要知道"conto"是否有小数(以改变if语句中字符串的格式)

怎么做?

谢谢

iphone ios

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

NSBder在decodeBool forKey上崩溃(Xcode 8,Swift 3)

我有这个简单的课程

import UIKit

class SimpleModel: NSObject, NSCoding {

    var name : String!
    var done : Bool!

    init(name:String) {
        self.name = name
        self.done = false
    }

    internal required init?(coder aDecoder: NSCoder) {
        self.name = aDecoder.decodeObject(forKey: "name") as! String
        self.done = aDecoder.decodeBool(forKey: "done") // BUG HERE
    }

    func encode(with encoder: NSCoder) {
        encoder.encode(self.name, forKey: "name")
        encoder.encode(self.done, forKey: "done")
    }
}
Run Code Online (Sandbox Code Playgroud)

保存代码:

let data = NSKeyedArchiver.archivedData(withRootObject: storageArray)
UserDefaults.standard.set(data, forKey: "storage")
UserDefaults.standard.synchronize()
Run Code Online (Sandbox Code Playgroud)

读取代码:

if let data = UserDefaults.standard.data(forKey: "storage") {
    storageArray = NSKeyedUnarchiver.unarchiveObject(with: data) …
Run Code Online (Sandbox Code Playgroud)

xcode boolean nskeyedarchiver nskeyedunarchiver

5
推荐指数
3
解决办法
3639
查看次数

强制UISplitViewController始终以横向显示主(仅限)(在iPhone 6 Plus上)

在通用应用程序中,我无法找到始终显示(并且仅)主控制器的方法,即使在横向旋转的iPhone 6 Plus上也是如此.

我想要实现的是看到UISplitViewController仅在iPad上运行而不在iPhone上运行,不知道是否可能

委托方法没有帮助:

func splitViewController(svc: UISplitViewController, shouldHideViewController vc: UIViewController, inOrientation orientation: UIInterfaceOrientation) -> Bool {
        return false
    }

    func splitViewController(splitViewController: UISplitViewController, collapseSecondaryViewController secondaryViewController: UIViewController, ontoPrimaryViewController primaryViewController: UIViewController) -> Bool {
        return true
    }
Run Code Online (Sandbox Code Playgroud)

iphone ipad uisplitviewcontroller ios swift

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

按 2 个参数对数组进行 Swift 排序

该数组包含实体的实例(核心数据的图形库):

let timCook = Entity(type: "Employees")
timCook["name"] = "Tim Cook"
timCook["company"] = "Apple"
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用,我认为 && 不是按多个值排序的正确方法......

self.storage.sortInPlace ({ ($0["company"] as? String) < ($1["company"] as? String)
                             && ($0["name"] as? String) < ($1["name"] as? String)
                         })
Run Code Online (Sandbox Code Playgroud)

谢谢

arrays swift cosmicmind

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