我在故事板中有兩個視圖控制器。 VC1有三個按鈕,VC2有一個圖像視圖。如何在兩個視圖控制器之間發送和獲取數據?
當點擊按鈕A在VC1,A 的那麼VC2顯示圖像當VC1點擊按鈕B,B。
的那麼VC2顯示圖像如何VC2可以知道被點擊的VC1哪個按鈕?
我在故事板中有兩個視圖控制器。 VC1有三個按鈕,VC2有一個圖像視圖。如何在兩個視圖控制器之間發送和獲取數據?
當點擊按鈕A在VC1,A 的那麼VC2顯示圖像當VC1點擊按鈕B,B。
的那麼VC2顯示圖像如何VC2可以知道被點擊的VC1哪個按鈕?
這很簡單!
1)在VC2創建在h文件的NSString屬性,然後合成在.m文件「NSStringObjofVC2」 2)在VC1 h文件#進口「VC2」進口VC2 和這樣
創建對象VC2 * vc2Obj;
3)在viewDidLoad方法
vc2Obj = [[VC2的alloc] INIT];
4)上的每個按鈕點擊添加此
vc2Obj.NSStringObjofVC2 = @ 「differentImageNameforAll3Buttons.png」;
最後在VC2
只需使用NSStringObjofVC2中的UIImage的文件名
在VC2中設置代理將信息發送回原始的VC。谷歌的「objective-c委託」,並閱讀模型 - 視圖 - 控制器範例。
謝謝期待你的答覆。它幫助我節省開發應用程序的時間。 我感謝您的幫助。 –
你可以做到這一點順着接下去使用的圖像:
給出從按鈕A到VC2的按鈕連接,從按鈕B到VC2,從按鈕A到VC2l
分別輸入segue標識符SegueA,SegueB,SegueC。
編寫如下方法VC1:
- (空)prepareForSegue:(UIStoryboardSegue *)賽格瑞發件人:(ID)發送 {
ImageViewController *vc2=(ImageViewController*)[ segue destinationViewController];
if([[segue identifier] isEqualToString:@"SegueA"]){
vc2.imageView.image =[UIImage imageNamed:@"a.png"];
}else
if([[segue identifier] isEqualToString:@"SegueB"]){
vc2.imageView.image =[UIImage imageNamed:@"b.png"];
}else
if([[segue identifier] isEqualToString:@"SegueC"]){
vc2.imageView.image =[UIImage imageNamed:@"c.png"];
}
}
感謝您的建議和幫助。我是iOS的初學者。我不知道很多iOS。你的幫助支持我的學習。再次感謝。 –
感謝您的指導線。我重視你的幫助。它支持我更輕鬆,更快速地完成任務。再次感謝。 –