Tul*_*leb 10 storyboard details uitableview ios segue
我的UITableView需要2次点击才能显示所选单元格的详细信息页面:一个用于选择,另一个用于显示详细视图.我想要一个clic直接显示点击单元格的详细视图.
我在UITableViewManager.m中使用了一个带有此方法的模态segue:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [playerList indexPathForSelectedRow];
TCPlayerStat *object = _objects[indexPath.row];
[[segue destinationViewController] setPlayerStat:object];
}
}
Run Code Online (Sandbox Code Playgroud)
我无法使用push segue,因为我没有导航控制器(并不是真的想要).
我查看了TableView属性检查器,但没有找到与此相关的任何内容.我选择了"单一选择"选项并选中"显示选择触摸".我不知道这是否可能,如果可能,在哪里看..
谢谢你的帮助.
编辑1:当我写这样的两个方法时,它仍然不起作用(需要2次点击),我有一个新的警告日志:
"警告:在演示文稿正在进行时,尝试在TCRootViewController:0xa24f050上显示TCDetailViewController:0xa27b900!"
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self performSegueWithIdentifier:@"showDetail" sender:self];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [playerList indexPathForSelectedRow];
TCPlayerStat *object = _objects[indexPath.row];
TCDetailViewController *detailViewController = [segue destinationViewController];
[detailViewController setPlayerStat:object];
}
}
Run Code Online (Sandbox Code Playgroud)
编辑2:我不知道为什么,但有时它完美无缺,不需要再次点击表视图.找不到:/
解决方法如下
Tul*_*leb 15
我喜欢这个问题!
我在故事板上更改了一个我不应该拥有的参数.我希望选择单元格在单击时不显示背景突出显示颜色,但看起来Segue基于它可以正常工作.
如何修复:在故事板中,在导航器中选择表视图单元格,不要在"选择"(属性检查器)中选择"无"选项."蓝色","灰色"或"默认"似乎很好用.
Sco*_*der 14
我已经将选择属性设置为"默认",并且仍然遇到双击问题.然而,这一建议确实指出了一个相关的解决方案.在didSelectRowAtIndexPath中,调用:
self.tableView.deselectRowAtIndexPath(indexPath, animated: false)
Run Code Online (Sandbox Code Playgroud)
(显然,我正在使用Swift.)
归档时间: |
|
查看次数: |
2348 次 |
最近记录: |