首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改导航栏项目内容不影响视图内容

更改导航栏项目内容不影响视图内容
EN

Stack Overflow用户
提问于 2015-09-18 21:53:24
回答 1查看 85关注 0票数 1

有没有一种通用的模式来改变导航栏的内容而不改变UITableView的内容,滚动位置,其他元素等等?

我有一个带有标题和按钮的导航栏。在按下这个按钮时,我希望栏显示一个文本框而不是标题,并显示另一个带有另一个操作的按钮。在文本栏或按钮区段外轻触时展开。

最明显的方法是将一个片段推送到另一个没有动画的场景,重新实现相同的UITableView内容和位置,但我发现这样做效率很低。

另一种方法是尝试在同一场景中进行。我尝试将文本框放在标题的导航栏上。在这种情况下,文本框将替换导航栏的标签,即使文本框被隐藏,也不会显示它。

iOS 8-9 + Swift谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-09-18 22:06:01

您可以将控制器的导航项的the视图设置为所需的视图。

代码语言:javascript
复制
 override func viewDidLoad()
{
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    let titleView : UIView = UIView(frame: CGRectMake(0.0, 0.0, 40.0, 64.0))
    let titleLabel : UILabel = UILabel (frame: CGRectMake(0.0, 0.0, 40.0, 34.0))
    titleLabel.text = "title"
    let button : UIButton = UIButton(frame: CGRectMake(0.0, 44.0, 40.0, 20.0))

    titleView.addSubview(titleLabel)
    titleView .addSubview(button)
    self.navigationItem.titleView = titleView
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32653806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档