2015-04-02 17 views
20

Tôi đang sử dụng Xcode 6.2 cho các dự án iOS. Trong các phiên bản cũ của Xcode, khi một kết nối được tạo ra cho một IBOutlet, nó luôn luôn lưu trữ yếu. Bây giờ khi tôi tạo kết nối, chúng được mặc định là mạnh. Tôi để nó theo cách đó và không nhận thấy bất kỳ sự khác biệt nào.IBOutlet có nên là var yếu hoặc mạnh không?

Phiên bản Xcode nào đã thay đổi mặc định thành mạnh và tại sao?

Trả lời

7

Nó không quan trọng yếu hoặc mạnh ổ cắm là trong nhiều trường hợp. Bạn chỉ cần chắc chắn rằng bạn không có chu kỳ tham chiếu mạnh mẽ.

Các bản xem trước không nên có cửa hàng mạnh mẽ cho người giám sát và chế độ xem không có ổ cắm mạnh mẽ cho bộ điều khiển của nó, vì giám sát đã có tham chiếu mạnh mẽ đến các cuộc kiểm tra và bộ điều khiển của nó.

22

Có, các cửa hàng trước đây thường phải yếu nhưng Apple đã thay đổi điều đó. Bây giờ, họ khuyên bạn nên sử dụng các cửa hàng mạnh trong phiên WWDC 2015 Implementing UI Designs in Interface Builder. Chỉ reason tại sao nó có thể yếu là giữ lại chu kỳ.

+0

Với Xcode 8.3.1 các IBOutlets được tạo trong IB là 'yếu var' – neoneye

+0

Trình bày đi qua kết nối mạnh/yếu vào khoảng 32:30 trong bản trình bày. Điều đó nói rằng, tôi rất khuyên bạn nên xem toàn bộ điều là tốt - tấn thông tin hữu ích đặc biệt là nếu bạn mới phát triển iOS :) – FateNuller

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