有新项目时标记移动应用程序菜单按钮
Mark mobile app menu button when there are new items
我的应用程序中有几个 ViewController,而且它们都有菜单按钮。按下此按钮时 - 打开菜单 ViewController。
我想用红点标记菜单按钮,表示有一些新内容可用,用户需要按菜单按钮才能看到哪个菜单项标有这个点。
因为我所有的按钮都是相互独立的 - 我认为我需要这样解决它
- 在每个菜单按钮上添加红点图像
- 默认隐藏此点
- 当每个 ViewController 打开时 - 我应该检查 - 是否有可用的新项目并将此红点图像的 isHidden 属性 切换为 false。
但也许有更优雅的方式?
使用 NotificationCenter 在新内容可用时通知 ui
在菜单中 viewcontroller class:
//put this in viewDidLoad
NotificationCenter.default.addObserver(self.selector : #selector(menuviewcontroller.refresh(_:)),name:NSNotification.Name(rawValue:"showRedBtn"),object : nill)
//create function refresh
func refresh(_ notification : Notification)
{
//make the red dot visible
}
创建 class 侦听是否添加了任何内容,并在通过这行代码添加的情况下调用委托
NotificationCenter.default.post(name : Notification.Name("showRedBtn"),object : nil , userInfo : nil)
希望对您有所帮助
我的应用程序中有几个 ViewController,而且它们都有菜单按钮。按下此按钮时 - 打开菜单 ViewController。
我想用红点标记菜单按钮,表示有一些新内容可用,用户需要按菜单按钮才能看到哪个菜单项标有这个点。
因为我所有的按钮都是相互独立的 - 我认为我需要这样解决它
- 在每个菜单按钮上添加红点图像
- 默认隐藏此点
- 当每个 ViewController 打开时 - 我应该检查 - 是否有可用的新项目并将此红点图像的 isHidden 属性 切换为 false。
但也许有更优雅的方式?
使用 NotificationCenter 在新内容可用时通知 ui
在菜单中 viewcontroller class:
//put this in viewDidLoad
NotificationCenter.default.addObserver(self.selector : #selector(menuviewcontroller.refresh(_:)),name:NSNotification.Name(rawValue:"showRedBtn"),object : nill)
//create function refresh
func refresh(_ notification : Notification)
{
//make the red dot visible
}
创建 class 侦听是否添加了任何内容,并在通过这行代码添加的情况下调用委托
NotificationCenter.default.post(name : Notification.Name("showRedBtn"),object : nil , userInfo : nil)
希望对您有所帮助