我有這個NSObject類的對象。該對象顯示在由viewController管理的視圖中。如何從對象的類中獲取對該viewController的引用?iPhone - NSObject獲取引用viewController
0
A
回答
2
如你所知,沒有「myViewController」屬性。讓任何對象訪問其他對象的最簡單方法是通過委託關係。
定義一個協議爲代表 - 通常是希望的對象的訪問,這將是代表模塊中,即,視圖控制器
@protocol MyViewControllerDelegate
- (void)someActionTheViewControllerWillDo;
#end
廣告類中的代表支持實現它
@interface MyViewController : UIViewController <MyViewControllerDelegate>
...
@end
實施你定義爲在視圖控制器的協議的一部分的功能:
@implementation MyViewController
etc. etc.
#pragma mark -
#pragma mark MyViewControllerDelegateMethods
- (void)someActionTheViewControllerWillDo
{
NSLog(@"I'm being called from an object that has me as a delegate");
}
etc. etc.
@end
使一個變量在調用對象來存儲委託對象
@interface MyObject : NSObject
{
etc. etc.
id<MyViewControllerDelegate> myDelegate;
etc. etc.
}
初始化該對象
MyObject* myObject = [[MyObject alloc] initWithblahblah...
myObject.myDelegate = self
/* assuming myObject is being created in the view controller... */
在myObject的 - 使用定義的協議來訪問方法在委託對象!
[myDelegate someActionTheViewControllerWillDo];
0
用戶委託模式:
0。聲明一個協議:
@protocol My_Object_Delegate;
確定公司運作的NSObject的一個實例變量:
id <My_Object_Delegate> delegate;
2。設置此代表監督它的視圖控制器:
myObject.delegate = myViewController;
3。當你的NSObject完成。讓它委託其執行某些任務:
[myObject.delegate performaCertainTask:self];
相關問題
- 1. 從NSObject推動幾個viewcontroller
- 2. iPhone - 的viewController調用的viewController
- 3. 帶有NSObject&iPhone類的iPhone Int不能引用它本身
- 4. 獲取的ViewController
- 5. 從UIView屬性獲取對NSObject父項的引用
- 6. iphone viewController
- 7. 錯誤從NSObject傳遞NSMutableArray到ViewController
- 8. 將NSArrays從ViewController傳遞到NSObject類
- 9. 將NSString從ViewController傳遞給NSObject
- 10. 從Storyboard獲取ViewController
- 11. 在NSObject中引用UIViewController
- 12. iPhone應用程序崩潰與[NSObject(NSObject)doesNotRecognizeSelector:]
- 13. iPhone結構ViewController
- 14. Xcode項目引用問題 - [NSObject doesNotRecognizeSelector]
- 15. (iphone)是CGImageRef NSObject? c指針?
- 16. 我如何使用NSString獲取NSObject的屬性
- 17. 從ViewController獲取StoryBoard標識
- 18. AppDelegate:從ViewController獲取價值?
- 19. 獲取ViewController的名稱
- 20. 在ViewController中獲取商店
- 21. 如何從UITabBarItem獲取ViewController
- 22. 我們可以在NSObject中使用viewController視圖嗎?
- 23. 無法使用NSObject在單獨的ViewController中加載UIView
- 24. 如何讓兩個ViewController使用一個NSObject
- 25. 如何在NSObject類中調用NSURLSession委託不在viewcontroller中?
- 26. iPhone ViewController影響另一個ViewController的IBOutlet
- 27. 我可以使用單個NSObject類的多個ViewController類來從API獲取數據
- 28. iPhone:你能告訴我區別b/t(NSObject *)obj&(NSObject * obj)
- 29. 以編程方式獲取TabBar中ViewController的索引
- 30. 如何在非viewcontroller類中獲取可見/當前viewcontroller? Swift
Thanksssssssssssssssssssssssss !!!!!!!!!!! – Roger 2010-12-23 03:44:47