Có những yếu tố như UITableView
s, UINavigationBar
s có một phong cách khác nhau trên iOS 7.Làm cách nào để iOS 7 triển khai các phần tử giao diện người dùng để chúng trông khác nhau tùy thuộc vào SDK bạn biên dịch?
phong cách này được xác định tại thời gian chạy, vì những lớp học được thực hiện trên UIKit
, và UIKit
được liên kết với ứng dụng của bạn tự động trong thời gian chạy , không tĩnh tại thời gian biên dịch. Vì vậy, người ta sẽ nghĩ rằng bất kỳ ứng dụng nào chạy trên iOS 7 sẽ có những yếu tố đó trông giống như cách họ nhìn trên iOS 7. Tuy nhiên, họ giữ cùng một kiểu mà họ đã từng có trên iOS 6, cho đến khi bạn biên dịch với iOS 7 SDK. Ngoại trừ một số trong số họ (như UIAlertView
hoặc UIMenuController
)
lời giải thích duy nhất của tôi cho điều này là họ làm điều gì đó loại như thế này:
#define SDKApplicationWasLinkedAgainst ...
if (SDKApplicationWasLinkedAgainst < 7.0)
...
else
...
Điều này rõ ràng là thực sự cồng kềnh, khiến họ cần phải giữ cho việc duy trì một rất nhiều mã cũ. Vì vậy, tôi tò mò, đây thực sự là những gì đang xảy ra dưới mui xe? Tôi đang thiếu gì?
@Unicorn: Đúng, tuy nhiên, anh ấy không hỏi về bất kỳ điều gì cụ thể cho iOS 7 sẽ được bao gồm bởi NDA. Câu hỏi này có thể áp dụng cho ** bất kỳ ** hai phiên bản iOS nào. – lnafziger
Thật không may, trừ khi bạn là một coder tại Apple, bạn không thể thực sự trả lời câu hỏi làm thế nào ** Apple ** hiện nó. Bạn có thể nhận được một số ý tưởng về * một cách * mà ** bạn ** có thể làm điều đó nếu bạn tua lại câu hỏi của bạn mặc dù. – lnafziger
Điều này thực sự có thể được trả lời ngay cả khi bạn không làm việc tại Apple, và nó sẽ không là một ý kiến: một trường đại học của tôi phát hiện ra cách họ làm điều đó làm một số tháo gỡ. –