我開始使用默認的標籤式應用程序,在故事板中添加了一些帶有自己的視圖控制器的標籤,如何知道已經選擇的標籤何時被再次觸摸?標籤欄控制器 - 如何重新選擇選定的標籤
選項卡1轉到已加載其他頁面的web視圖,當用戶再次點擊主頁選項卡時,仍然突出顯示時,我想重新加載初始網址。
感謝您的任何想法!
我開始使用默認的標籤式應用程序,在故事板中添加了一些帶有自己的視圖控制器的標籤,如何知道已經選擇的標籤何時被再次觸摸?標籤欄控制器 - 如何重新選擇選定的標籤
選項卡1轉到已加載其他頁面的web視圖,當用戶再次點擊主頁選項卡時,仍然突出顯示時,我想重新加載初始網址。
感謝您的任何想法!
每次觸摸標籤欄時,都會調用UITabBarControllerDelegate方法[– tabBarController:didSelectViewController:]
。這個API狀態的文檔:
In iOS v3.0 and later, this (selected view controller) could be the same view controller that was already selected.
所以,如果你發現你指定的標籤被再次選擇,你可以有這樣的委託方法重裝你的初始URL。
@interface AHTabBarController() <UITabBarControllerDelegate>
@property (nonatomic, strong) UIViewController* previousViewController;
@end
///
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
if ([viewController isEqual:self.previousViewController])
{
NSLog(@"reselect tabbar");
}
self.previousViewController = viewController;
}
我想委託從默認的故事板添加到TabBarController,而且當我改變了類指向一個'code'CustomTabBarController。但是從Outlets部分的代理拖拽的方法不起作用。我試圖觸發這個 - (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController { NSLog(@「Tab touching」); } – Mark
您需要指定* something *作爲您的委託,因此無論在哪個對象中,在.h(「'@ interface'」)文件中,您都需要將「UITabBarControllerDelegate」添加到它的聲明中。 –
我使用@interface CustomUITabBarController:UITabBarController –
Mark