如何使视图出现在按钮上?目标-c

Posted

技术标签:

【中文标题】如何使视图出现在按钮上?目标-c【英文标题】:How to make view appear over button? Objective-c 【发布时间】:2013-08-13 18:49:38 【问题描述】:

当用户点击某些东西时我会做什么来显示视图,我将视图隐藏在视线之外然后将其滑入。它会滑过我的段控件,但不会滑过我的按钮。 第二张图片显示了我的幻灯片事件越过了段控件,但没有显示按钮离开那里的按钮,这看起来很尴尬。如何显示来自右侧的幻灯片,该幻灯片出现在我的所有组件上,包括我的今天按钮?

这是我显示滑动控制器的代码。

    self.eventsViewController = nil;
    self.eventsViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"eventsViewController"];
    self.eventsViewController.view.frame = CGRectMake(self.view.frame.size.width, self.view.frame.origin.y, 700, self.view.frame.size.height);
    [self addChildViewController:self.eventsViewController];
    [self.view addSubview:self.eventsViewController.view];
    [self.eventsViewController didMoveToParentViewController:self];
    [UIView animateWithDuration:0.44 animations: ^(void)
        if (UIInterfaceOrientationIsPortrait(self.interfaceOrientation))
        
            self.eventsViewController.view.frame = CGRectMake(200 , 75 ,568 ,900);
         else 
            self.eventsViewController.view.frame = CGRectMake(333 , 75 ,690 ,630);
        

];

编辑:带有颜色的 eventsViewController 的图像

【问题讨论】:

我认为这个[self.eventsViewController didMoveToParentViewController:self]; 是不需要的.. 连这一行都没有[self addChildViewController:self.eventsViewController]; 您可以尝试更改self.eventsViewController.viewbackgroundcolor,看看它是否真的覆盖了那个空间?在相同的颜色上很难理解.. 【参考方案1】:

你有没有试着把你的视野放在前面?

[self.view bringSubviewToFront:self.eventsViewController.view];

或发送到您的按钮。

【讨论】:

我不认为是这种情况,因为他在最后添加了控制器视图,所以视图已经在顶部,无需再次使其顶部,它的东西不同。跨度> [self.view sendSubviewToBack:self.todayButton];成功了。我同意 iphonic 的观点,当我在视图控制器顶部添加视图时,按钮应该位于后面,但由于某些奇怪的原因,它不是。 [self.view bringSubviewToFront:self.eventsViewController.view];不过没用。

以上是关于如何使视图出现在按钮上?目标-c的主要内容,如果未能解决你的问题,请参考以下文章

如何使用滚动视图使隐藏的按钮菜单出现/消失?

当softKeyBoard隐藏按钮和其他元素时如何使布局可滚动[ANDROID]

如何使 UIView 不出现在背景上但仍出现在 UIImageView (子视图)上

按下一个按钮并使相同的按钮出现在同一页面上

按下按钮后如何使图片出现在单元格中

如何清除导航堆栈以使后退按钮不出现?