2013-04-28 76 views
0

假設我有一個名爲A.framework的框架,並以A.h文件作爲主要導入。客戶端應用程序將使用這個框架的標準方法是:更改iOS框架的導入

#import <A/A.h>

假設現在存在另一個框架我想歸入B.framework,其功能在我A.framework /覆蓋/實現,這樣客戶端應用程序可以真正取消鏈接B.framework並且只鏈接到A.framework以獲得B.framework的所有功能。換句話說,我有一個實現了所有的B.framework功能的內部A.framework並沒有你就可以通過

#import <A/B.h>

這樣導入文件,如果用戶更換所有#import <B/B.h>電話與#import <A/B.h> ,他們將獲得B.framework的全部功能。

我的問題是:我可以讓用戶只需斷開鏈接B.framework無需更換他們所有的#import <B/B.h>電話與#import <A/B.h>的,不知怎麼有來自A.framework,而不是那些#import <B/B.h>進口?

回答

1

您描述的方式,是的。如果你所有的類/方法/等。在A/B.h之內,將會從B/B.h中檢索出來,B.framework不再需要,只要A.framework不直接引用B.framework ...如果這樣做有道理......

想想這樣:

Not allowed

如果在這種情況下,斷開鏈接B.framework,你會當您嘗試在波黑做任何事情,因爲在A.framework波黑文件需要B.framework的功能得到一個錯誤。

但是,如果它看起來像這樣:

Allowed

所以B.framework你的重要組成部分實際上都在裏面 A.framework(你將它們整合),即A.framework 從未引用<B/*>,你可以做到這一點!

希望能幫到你。