2016-12-26 28 views
7

Tôi đã làm theo Hướng dẫn ứng dụng Swift được tạo bởi Apple here. Cụ thể, tôi đang cố gắng thiết lập một vài nút tùy chỉnh để tạo điều khiển xếp hạng. Các nút có ba hình ảnh được liên kết với nó: emptyStar, filledStar và highlightStar, được sử dụng ở các trạng thái khác nhau của nút.Lỗi mẫu dự kiến ​​trong Swift?

tôi sử dụng mã chính xác theo quy định của Apple, nhưng tôi không biết tại sao tôi đã nhận được này thời gian biên dịch khó hiểu lỗi Expected pattern như trong ảnh chụp màn hình: Expected pattern errors Image Assets

Tôi đang làm gì sai ở đây?

+2

Đó ' imageName' thực sự là phím tắt cho '#imageLiteral (resourceName:)', đó là thời gian biên dịch' UIImage (tên:) '. – user28434

Trả lời

10

Ngớ ngẩn tôi và Xcode, đó là tính năng Tự động hoàn thành mã gây nhầm lẫn cho tôi.

Các biểu tượng nhỏ trong mã được hiển thị trong ảnh chụp màn hình đầu tiên không phải là trang trí trực quan phù hợp với tên biến của tôi (mặc dù tôi thích những "biểu tượng cảm xúc" trang nhã của tôi). Chúng cho biết rằng những gì tôi khai báo sau let không phải là một biến, nhưng chính nó là rất hình ảnh.

Bạn phải cẩn thận khi không chấp nhận tự động hoàn thành khi nhập và kết hợp với văn bản thông thường khi khai báo hằng số. Sau khi tuyên bố như vậy, bạn sẽ thấy rằng có hai khác nhau, ví dụ, emptyStar của cùng một tên - một hình ảnh và một hằng số khác.

Two empty stars

Đây là mã cuối cùng, hầu như không thay đổi trực quan đáng chú ý!

Final working code

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