在下一个ViewController上设置NavigationBar标题,而不会出现视觉错误

时间:2019-11-18 16:41:08

标签: ios swift uitableview uicollectionview uinavigationcontroller

所以我有一个名为UICollectionView的{​​{1}},其中有一个WeatherVC

NavigationController选择WeatherVCWeatherDetailVC的{​​{1}}。

我要根据选择的UITableView来设置UICollectionViewCell NavigationBar标题。

下面的代码使我的整个NavigationBar都出现故障。 示例:https://imgur.com/a/vOIbxK5

WeatherDetailVC

变量UICollectionViewCell设置在单元格突出显示或点击上。仅在iOS 13中,并且仅当我根据点击的单元格给它编号时,它的行为才如此-如果它是静态的,则标题更改没有视觉错误。我已经尝试在override func prepare(for segue: UIStoryboardSegue, sender: Any?) { if let vc = segue.destination as? WeatherDetailVC { let cities = ["City1", "City2", "City3", "City4"] // cellPressed = 3 - for example this would work without bugs vc.navigationItem.title = cities[cellPressed] } } 内创建函数来更改其标题并在cellPressed中进行调用,但这无济于事。

编辑:我的主要问题是此解决方案附带的错误或故障。更改下一个VC标题没有问题。

2 个答案:

答案 0 :(得分:0)

由于navigationBar标题表示视图控制器的标题,因此可以直接设置它:

vc.title = cities[cellPressed]

假设cities[cellPressed]已测试并返回正确的值

答案 1 :(得分:0)

我知道了。这是由于变音符号而发生的。如果我用变音符号导航栏分配标题,则每次都会出错。有人知道如何解决吗?

编辑:您可以在我提供的IMGUR链接中看到这种情况。标题中有字符“á”。