单击侧边菜单时如何更改 ViewController 中的 UIimageview 图像?
How do I change the UIimageview image in the ViewController when the side menu is clicked?
我想在单击其中一个侧面菜单项时更改 Viewcontroller 中的背景图像。
我在执行此过程时使用的是 VIP 架构。
单击侧面菜单上的项目时,以下代码块起作用:
else if indexPath.row == 1
{
switch indexPath.section {
case 0:
print("Any ")
print(indexPath)
case 1:
print("Dark Mode ")
// self.interactor?.selectThemes(theme: "Dark")
router?.changeTheme(theme: .Dark)
case 2:
print("Once a day ")
default:
print("out of range")
}
}
然后我想在路由器上做一些事情:
func changeTheme(theme:Themes){
if Themes.Dark == theme
{
var jokegenerate = JokeGenerateController()
jokegenerate.changeBackground(image: UIImage(named: "duck")!)
//print(theme)
}
}
最后,我想换一下viewController中的图片。我的代码如下:
func changeBackground(image: UIImage){
backGroundImage.image = image
print("hey")
}
但是我在这里收到以下错误:
致命错误:在隐式展开可选值时意外发现 nil
我应该如何修复错误?
你应该检查这个 link (delegate)
您应该在模块之间创建连接。
class Bakery
{
var delegate:BakeryDelegate?
func makeCookie()
{
var cookie = Cookie()
cookie.size = 6
cookie.hasChocolateChips = true
delegate?.cookieWasBaked(cookie)
}
}
class CookieShop: BakeryDelegate
{
func cookieWasBaked(_ cookie: Cookie)
{
print("Yay! A new cookie was baked, with size \(cookie.size)")
}
}
let shop = CookieShop()
let bakery = Bakery()
bakery.delegate = shop
bakery.makeCookie()
类似的东西。
我想在单击其中一个侧面菜单项时更改 Viewcontroller 中的背景图像。
我在执行此过程时使用的是 VIP 架构。
单击侧面菜单上的项目时,以下代码块起作用:
else if indexPath.row == 1
{
switch indexPath.section {
case 0:
print("Any ")
print(indexPath)
case 1:
print("Dark Mode ")
// self.interactor?.selectThemes(theme: "Dark")
router?.changeTheme(theme: .Dark)
case 2:
print("Once a day ")
default:
print("out of range")
}
}
然后我想在路由器上做一些事情:
func changeTheme(theme:Themes){
if Themes.Dark == theme
{
var jokegenerate = JokeGenerateController()
jokegenerate.changeBackground(image: UIImage(named: "duck")!)
//print(theme)
}
}
最后,我想换一下viewController中的图片。我的代码如下:
func changeBackground(image: UIImage){
backGroundImage.image = image
print("hey")
}
但是我在这里收到以下错误: 致命错误:在隐式展开可选值时意外发现 nil
我应该如何修复错误?
你应该检查这个 link (delegate)
您应该在模块之间创建连接。
class Bakery
{
var delegate:BakeryDelegate?
func makeCookie()
{
var cookie = Cookie()
cookie.size = 6
cookie.hasChocolateChips = true
delegate?.cookieWasBaked(cookie)
}
}
class CookieShop: BakeryDelegate
{
func cookieWasBaked(_ cookie: Cookie)
{
print("Yay! A new cookie was baked, with size \(cookie.size)")
}
}
let shop = CookieShop()
let bakery = Bakery()
bakery.delegate = shop
bakery.makeCookie()
类似的东西。