Tôi có một tabBarController
mà tôi thêm bằng cách đặt đoạn mã sau vào:iPhone - presentModalViewController qua UITabBarItem và dismissModalViewController sạch
AppDelegate.h:
...
UITabBarController IBOutlet *tabBarController;
}
@property (nonatomic, retain) IBOutlet UITabBarController *tabBarController;
AppDelegate.m:
...
[self.window addSubview:tabBarController.view];
[self.window makeKeyAndVisible];
[tabBarController setDelegate:self];
sau đó tôi sử dụng đoạn mã sau để trình bày một phương thức quét mã vạch View Controller:
- (void)tabBarController:(UITabBarController *)tbc didSelectViewController:(UIViewController *)vc {
// Middle tab bar item in question.
if (vc == [tabBarController.viewControllers objectAtIndex:2]) {
ScanVC *scanView = [[ScanVC alloc] initWithNibName:@"ScanViewController" bundle:nil];
// set properties of scanView's ivars, etc
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:scanView];
[tabBarController presentModalViewController:navigationController animated:YES];
[navigationController release];
[scanView release];
}
}
Khi nó thực sự được giới thiệu tôi nghĩ rằng phương pháp này là không bắt mắt, bởi vì khi tôi bỏ qua những cái nhìn modal Tôi đang mang trở lại chế độ xem trống.
Rất nhiều ứng dụng quét hoặc ứng dụng quét mã vạch chỉ hiển thị bộ chọn hình ảnh chẳng hạn; làm điều này khá thành công. Tôi chỉ tự hỏi loại triển khai nào họ sẽ sử dụng để đạt được hiệu quả như vậy.
Đây là một ảnh chụp màn hình của một ứng dụng gọi là Đường dẫn, trong đó có các chức năng chính xác cùng tôi sau:
Tôi cũng nhận thấy rằng trong các ứng dụng này, nếu bạn đang ở trên bất kỳ khác mục thanh tab khác với phần giữa, giả sử bạn nhấp vào mục thanh tab thể hiện chế độ xem phương thức, khi nó bị loại bỏ, nó không thực sự đưa chúng trở lại chế độ xem trống mà nó loại bỏ như bình thường, tuy nhiên tab thực mục thanh trình bày chế độ xem phương thức không bao giờ được chọn. Tôi sẽ hài lòng với loại chức năng này nếu đó là cách duy nhất để thực hiện loại hiệu ứng này.
Bất kỳ trợ giúp nào sẽ được đánh giá rất cao vì tôi đã bị kẹt trong thời gian này khá lâu. Ngoài ra tôi thậm chí không chắc chắn cho dù đó là cách đúng để đặt tất cả các mã này trong AppDelegate
của tôi để cho bộ điều khiển xem được trình bày như một phương thức. Tất cả dường như, chỉ là, sai.
Tôi nghĩ bạn sẽ thấy rằng ứng dụng Đường dẫn đang sử dụng triển khai bộ điều khiển thanh tab của riêng họ. nghĩa là không phải là 'UITabBarController' từ Cocoa Touch – ohhorob