我创建了类似于邮件应用程序的东西。
tableView(main),它列出了API中的数据库内容和顶部的搜索栏。
对于搜索,我将一个视图(第二个)带到前面,它有我的搜索响应,然后我把它放在另一个tableview(第二个)中。
对于这部分,没关系。
现在,我希望导航到另一个视图,但是当我选择一个带有“pushViewController:”的单元格时,没有任何附加内容(我在“main”tableView中执行相同操作并且它运行良好)。
除了我的第二次导航外,一切正常。
答案 0 :(得分:0)
在推送之前,检查您的第二个导航控制器是否为空:
NSLog(@" nav con is %@", mySecondNavigationController);
答案 1 :(得分:0)
您只需要一个tableView用于搜索目的并显示所有数据。只需维护两个数组。第一个包含原始数据,第二个包含搜索数据。当一个搜索开始重新加载tableView与第二个数组并将所有数据放入其中。像这样,您的导航将适用于两种情况。
夫特:
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
if isSearch == "true"
{
return self.searchArray.count
}
else
{
return self.arr1.count
}
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
var cell:UITableViewCell? =
tableView.dequeueReusableCellWithIdentifier("tableCell") as? UITableViewCell
if(cell == nil)
{
cell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "tableCell")
cell!.selectionStyle = UITableViewCellSelectionStyle.None
}
if isSearch == "true"
{
var main_string = self.searchArray[indexPath.row]
var attributedString = NSMutableAttributedString(string:main_string)
attributedString.addAttribute(NSForegroundColorAttributeName, value: UIColor(red: 0.0/255.0, green: 168.0/255.0, blue: 255.0/255.0, alpha: 1.0) , range: NSMakeRange(0, string_to_color.length))
name.attributedText = attributedString
}
else
{
name.text = self.arr1[indexPath.row] as String
}
return cell!
}