Containment和UITableView flashScrollIndicators

时间:2013-11-25 21:34:13

标签: ios uitableview uiviewcontroller

我目前有一个父ViewController,它包含一个子UIViewController(Child)。子UIViewController有一个UITableView。在Child.viewDidAppear上,我调用了TableView.flashScrollIndicators。

由于某种原因,滚动指示灯不闪烁。我注意到如果我调用dispatch_after,第二次传递就会闪现。我一开始认为这是一个尺寸问题,但我不认为就是这样。这似乎是一个布局问题(我使用的是Storybards,iOS 7,没有AutoLayout)。有什么想法吗?

这是我创建Child的代码。

- (void)viewDidLoad {
    [super viewDidLoad];

    // add it to the heirarchy
    if ([[self childViewControllers] count] == 0) {
        [self setViewControllers:[[NSMutableArray alloc] init]];

        ProductSelectionViewController *destination = (ProductSelectionViewController *)[[self storyboard] instantiateViewControllerWithIdentifier:@"ProductSelectionViewController"];

        [self addChildViewController:destination];

        // present the child
        [destination didMoveToParentViewController:self];
        [[self containerView] addSubview:[destination view]];

        [[self viewControllers] addObject:destination];

        [destination setDelegate:self];
    }
}

1 个答案:

答案 0 :(得分:1)

对我而言,它致电

[self performSelector: @selector(flashScrollIndicators) withObject: nil afterDelay: 0];

而不是

[self flashScrollIndicators];

在视图的didMoveToWindow方法中或在其视图控制器的viewDidAppear中。希望这可以帮助人们解决同样的问题。