小编Edw*_*ynh的帖子

Xcode 4.5命令行单元测试

在通过命令行运行我的单元测试时更新到Xcode 4.5后出现问题.以下是我尝试运行测试时看到的输出

Unknown Device Type. Using UIUserInterfaceIdiomPad based on screen size
Terminating since there is no workspace.
/Applications/Xcode.app/Contents/Developer/Tools/RunPlatformUnitTests.include:334: note: Passed tests for architecture 'i386' (GC OFF)

/Applications/Xcode.app/Contents/Developer/Tools/RunPlatformUnitTests.include:345: note: Completed tests for architectures 'i386'
Run Code Online (Sandbox Code Playgroud)

虽然它确实说测试已经通过并完成,但我认为它们实际上并没有被运行.

我正在使用以下命令来运行测试xcodebuild -workspace MyApp.xcworkspace -scheme MyAppTests -sdk iphonesimulator -configuration Debug clean build TEST_AFTER_BUILD = YES

有没有人遇到同样的问题,可以提供解决方案?

unit-testing xcodebuild ios6 xcode4.5

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

UIView在swift中指定了初始化程序

所以我已经UIView这样继承了

class CustomView: UIView {
}
Run Code Online (Sandbox Code Playgroud)

我可以做点什么

let customView = CustomView()
Run Code Online (Sandbox Code Playgroud)

但是,当我覆盖我认为是UIViewie 的两个指定初始化器时init(frame:),init(coder:)就像这样

class CustomView: UIView {

    required init(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        self.backgroundColor = UIColor.redColor()
    }

    override init(frame: CGRect) {
        super.init(frame: frame)
        self.backgroundColor = UIColor.redColor()
    }
}
Run Code Online (Sandbox Code Playgroud)

我不能再这样创建视图,因为它抱怨init()不再存在

let customView = CustomView()
Run Code Online (Sandbox Code Playgroud)

我的理解是,如果我覆盖所有指定的初始化器,我也应该继承所有的便利初始化器.

所以我的问题是.是init()不是UIView的便利初始化?或者UIView上有另一个指定的初始化程序,我还没有覆盖吗?

ios swift

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

MPMediaItem此类不是密钥值编码兼容的密钥

我试图检索iPod库中歌曲的曲目编号.

基本上我已经查询了所有相册,如下所示:

NSArray *albums = [MPMediaQuery albumsQuery].collections;
Run Code Online (Sandbox Code Playgroud)

检索到一张专辑:

MPMediaItemCollection *album = self.albums[0];
Run Code Online (Sandbox Code Playgroud)

迭代歌曲并尝试记录曲目编号

for (MPMediaItem *mediaItem in self.album.items)
{
    NSLog(@"Track Number %@", [mediaItem valueForKey:MPMediaItemPropertyAlbumTrackCount]);
}
Run Code Online (Sandbox Code Playgroud)

但这给了我以下错误

Terminating app due to uncaught exception 'NSUnknownKeyException', reason:
'[<MPConcreteMediaItem 0x1cd818d0> valueForUndefinedKey:]: this class is 
not key value coding-compliant for the key albumTrackCount.'
Run Code Online (Sandbox Code Playgroud)

如果我尝试其他键MPMediaItemPropertyTitle,MPMediaItemPropertyAlbumTitle或者MPMediaItemPropertyArtist工作正常.有什么我不知道为什么我无法访问MPMediaItemPropertyAlbumTrackCount.

mpmediaitem ios

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

标签 统计

ios ×2

ios6 ×1

mpmediaitem ×1

swift ×1

unit-testing ×1

xcode4.5 ×1

xcodebuild ×1