2015-12-16 13 views
22

Khi tôi chạy trò chơi SpriteKit, tôi nhận được lỗi này nhiều lần trong bảng điều khiển. Theo như tôi có thể nói (mặc dù tôi không hoàn toàn chắc chắn), bản thân trò chơi không bị ảnh hưởng, nhưng lỗi có thể có một số tác động khác, cùng với việc tạo bảng điều khiển gỡ lỗi.CUICatalog: Yêu cầu không hợp lệ: yêu cầu loại phụ mà không chỉ định thành ngữ (nó đến từ đâu và cách sửa nó?)

Tôi đã thực hiện một số nghiên cứu về lỗi và tìm thấy một số giải pháp khả thi, không có giải pháp nào có vẻ đã hoạt động hoàn toàn. Các giải pháp này bao gồm việc chuyển ignoresSiblingOrder thành false và chỉ định họa tiết như SKTextureAtlas(named: "atlasName").textureNamed("textureName"), nhưng các giải pháp này không hoạt động.

Tôi nghĩ rằng lỗi đang đến từ đâu đó từ việc sử dụng họa tiết và họa tiết kết cấu trong danh mục nội dung, mặc dù tôi không hoàn toàn chắc chắn. Dưới đây là cách tôi đang thực hiện một số các textures/images:

let Texture = SKTextureAtlas(named: "character").textureNamed("\character1") 
    character = SKSpriteNode(texture: Texture) 

thêm:

let Atlas = SKTextureAtlas(named: "character") 
    var Frames = [SKTexture]() 

    let numImages = Atlas.textureNames.count 

    for var i=1; i<=numImages; i++ { 
     let textureName = "character(i)" 
     Frames.append(Atlas.textureNamed(textureName)) 
    } 
    for var i=numImages; i>=1; i-- { 
     let TextureName = "character(i)" 
     Frames.append(Atlas.textureNamed(textureName)) 
    } 


    let firstFrame = Frames[0] 
    character = SKSpriteNode(texture: firstFrame) 

Đoạn mã trên chỉ được sử dụng để tạo ra một mảng mà từ đó để animate nhân vật, và chạy hoạt hình hoàn toàn ổn.

Đối với tất cả các nút sprite khác của mình, tôi khởi tạo với SKSpriteNode(imageNamed: "imageName") bằng tên hình ảnh từ danh mục nội dung, nhưng không phải trong bản đồ kết cấu. Tất cả các hình ảnh có @ 1x, @ 2x và @ 3x phiên bản.

Tôi không chắc liệu có bất kỳ nguồn nào khác có thể cho thông báo lỗi hay không hoặc nếu các ví dụ trên là nguồn của lỗi.

Đây có phải chỉ là lỗi với bộ công cụ giả mạo hoặc lỗi hợp pháp với mã hoặc nội dung của tôi không?

Cảm ơn!

+1

Lỗi này vẫn còn trong Xcode 7.3 Beta. C'mon Apple –

+0

Việc này sẽ "bỏ đi" nếu tải các kết cấu trực tiếp từ các bản đồ, chứ không phải bằng cách sử dụng 'initWithImagedNamed: @" somestring "' và tương tự. – Jonny

Trả lời

18

Tôi cũng gặp lỗi này. Theo tôi, đó là lỗi Xcode 7.2 chứ không phải lỗi của bạn. Tôi đã cập nhật Xcode ở giữa việc tạo ứng dụng và thông báo này bắt đầu hiển thị liên tục trong bảng điều khiển. Theo các liên kết thisthat, bạn không có gì phải lo sợ ở đây.

+0

Cảm ơn thông tin. Tôi sẽ bỏ qua nó, vì nó không ảnh hưởng đến ứng dụng. Một lưu ý phụ, tôi nghĩ rằng bạn đang đúng về nó là một lỗi với Xcode 7.2, như tôi chỉ cần cập nhật và đó là về khi tôi bắt đầu nhìn thấy lỗi. Cảm ơn! –

+0

Các liên kết thực sự cố gắng giải quyết vấn đề, bạn nên bỏ qua vấn đề và chờ một bản sửa lỗi? Tôi không thực sự muốn refactor mã của tôi xung quanh một lỗi. – 3366784

+3

Nạn nhân sau khi cập nhật 7.2- – Tony

3

Sản phẩm> sạch

dường như làm các trick.

Lỗi dường như bắt đầu xuất hiện khi bạn xóa một mục từ danh mục tài sản nhưng tham chiếu của nó vẫn được chôn trong mã ở đâu đó. (Trong trường hợp của tôi nó là tài sản không gian mặc định mà tôi đã xóa.)

+1

Không làm việc cho tôi. Xcode 7.3 beta 3 – Shades

+1

Đã không hoạt động đối với tôi hoặc trong XCode 7.2.1 – NDB

+1

Tôi đã xóa nội dung tàu vũ trụ khỏi Assets.xcassets, làm sạch dự án và đã xóa CUICatalog: Yêu cầu không hợp lệ: yêu cầu loại phụ mà không chỉ định lỗi thành ngữ mà tôi nhận được. (XCode 7.2.1) – brilliantairic

Các vấn đề liên quan