我有一個具有4個選項卡的TabBarControllers應用程序。現在,在didFinishLaunchingWithOptions我這樣做:獲取ViewController的名稱
UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
lpgr.minimumPressDuration = 5.0;
lpgr.delegate = self;
[self.window addGestureRecognizer:lpgr];
[lpgr release];
這部分工作,並長按手勢是在所有的四個選項卡識別。現在,我想傳遞用戶當前正在按下的當前ViewController的名稱,以便我可以將其傳遞到處理長按事件的函數中。
但這隻會返回AppDelegate類而不是ViewController類。我想在appDelegate中做所有事情,而不是在每個ViewController中放入NSStringFromClass([self class])。 – Diffy 2012-03-02 04:53:42
@Diffy看下面一個... !!!! – Kamarshad 2012-03-02 05:06:46
@Diffy您可以爲選項卡VC中的每個VC創建公共方法(例如'selectedViewControllerName:'),然後可以調用所選VC的方法來獲取VC的正確名稱。 _「我想在appDelegate中做所有事情,而不是在每個ViewController中放置NSStringFromClass([self class]),如果是這樣,只需使用第一個ViewController,就可以通過選中VC的TAG來返回名稱。 – Kjuly 2012-03-02 05:51:59