最近剛剛接觸ios開發,也沒有一本好的書可以閱讀,所有的功能都只能靠自己的摸索實現。這兩天在做多個頁面之間的跳轉和傳值問題,
頁面跳轉看我另一篇文章
現在將用delegate來傳值
一開始看網上的資源有些看不懂,總感覺很高深的樣子
後來一想,實際上delegate傳值的實質就是:
比如右ab兩個頁面,a想要傳值給b ,就只要先在a中得到b的指標,然後將想要傳的值賦給b,之後跳轉,
話不多說上**
首先我們需要建乙個delegate:
@protocol passvaluedelegate
- (void)setvalue:(nsstring *)value;
@end
其實這個主要是為了更好的管理你需要傳遞什麼值
然後然後在a.h裡面定義
@inte***ce a:tttableviewcontroller
@property(nonatomic, retain) idpassdelegate;
在a.m裡面
@synthesize passdelegate;
(我的類不夠直觀,摘別人的文字把)
然後在需要跳轉的時候,
buttonclicked:(id) sender
- (void) setvalue:(nsstring *) value;
在b.m裡面
- (void) setvalue:(nsstring *) value
實現了這些函式以後
你就在b中得到了a傳來的值 也就是_value這個變數
ios delegate迴圈引用
所有的引用計數系統,都存在迴圈應用的問題。例如下面的引用關係 物件a建立並引用到了物件b.物件b建立並引用到了物件c.物件c建立並引用到了物件b.這時候b和c的引用計數分別是2和1。當a不再使用b,呼叫release釋放對b的所有權,因為c還引用了b,所以b的引用計數為1,b不會被釋放。b不釋放,c...
ios delegate的語法注意
1 屬性或者成員變數中不能加括號 property nonatomic,weak id delegate 這個寫法中id不能加小括號,比如 id 語法是不正確的。2 在作為函式引數中需要加小括號 ios中函式引數的型別是用小括號的,所以delegate的尖括號外也需要有小括號 比如下面 1 nsst...
iOS delegate的優勢及缺點
聯絡人 石虎暱稱 嗡嘛呢叭咪哄 一 delegate優勢 1.非常嚴格的語法。所有將聽到的事件必須是在 delegate 協議中有清晰的定義。2.如果 delegate 中的乙個方法沒有實現那麼就會出現編譯警告 錯誤 3.協議必須在 controller 的作用域範圍內定義 4.在乙個應用中的控制流...