如何在选项卡之间切换并直接显示推送的视图控制器?
Posted
技术标签:
【中文标题】如何在选项卡之间切换并直接显示推送的视图控制器?【英文标题】:How to switch between tabs and directly show pushed view controller? 【发布时间】:2016-05-31 09:31:28 【问题描述】:这是我的代码:
VideoDetailViewController *VideoDetailVC = [self.storyboard instantiateViewControllerWithIdentifier:@"VideoDetailViewController"];
UINavigationController * navigationController = (UINavigationController *) [[self tabBarController] selectedViewController];
[self.tabBarController setSelectedIndex:0];
[navigationController pushViewController:VideoDetailVC animated:YES];
我正在标签栏的第二个索引中编写此代码。我想直接进入视频详细信息屏幕,这是标签栏零索引的子视图控制器。一切正常,但我看到的是:它显示了一个父视图控制器,它是标签栏的零索引。一秒钟后,它会推送到视频详细信息屏幕。我只是不想显示零索引。解决办法是什么?帮助将不胜感激。
编辑:
#import "TWPhotoCollectionViewCell.h"
@implementation TWPhotoCollectionViewCell
- (instancetype)initWithFrame:(CGRect)frame
if (self = [super initWithFrame:frame])
self.imageView = [[UIImageView alloc] initWithFrame:self.bounds];
self.imageView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
self.imageView.layer.borderColor = [UIColor blueColor].CGColor;
[self.contentView addSubview:self.imageView];
return self;
- (void)setSelected:(BOOL)selected
[super setSelected:selected];
self.imageView.layer.borderWidth = selected ? 2 : 0;
@end
【问题讨论】:
【参考方案1】:替换下一行
[navigationController pushViewController:VideoDetailVC animated:YES];
有
[navigationController pushViewController:VideoDetailVC animated:NO];
它可能会解决您的问题。
【讨论】:
非常感谢伙计:) 还有一个问题。我不想创建另一个线程。如果单元是第一次创建的,如何在自定义单元类中确定?我的意思是如果单元格索引为零,自定义类如何知道这一点?我使用 UICollectionView 在 cideopickerview 类中选择视频。默认情况下,我想将所选视频设置为零索引。你能提供什么帮助? 我试图取一个变量来检查,但我不知道在哪里初始化它的值。 没有收到您的问题 我正在使用自定义单元格类,在这里我想知道单元格是否是第一次创建的。即零索引的单元格。我想在自定义类中使用这个条件。查看我编辑的问题。我已将自定义单元格代码放在那里。以上是关于如何在选项卡之间切换并直接显示推送的视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章
在切换到 UITabbarController 中的不同选项卡之前关闭当前选项卡上的推送视图控制器
如何同时切换 tab 和 pushViewController?