解决选择了一个Row,再选择另一个Row,- (void)tableView:didDeselectRowAtIndexPath:才响应

实现下边的方法即可

- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [self tableView:tableView didDeselectRowAtIndexPath:indexPath];
    return indexPath;
}


如果调用 `ui->tableView->setRowHeight(0,200)` 后没有实际效果,可能原因有以下几个: 1. 当前的 QTableView 控件没有设置 QAbstractItemView::AdjustToContents 属性。在这种情况下,即使设置了行高,也可能会被 QTableView 控件的其他属性或样式表所覆盖,导致实际效果不符合预期。 2. 当前的 QTableView 控件中没有足够的数据行。如果 QTableView 控件中只有 1 行数据,那么 `ui->tableView->setRowHeight(0,200)` 只会影响该行数据的高度,而不会影响表格的行高。 3. 当前的 QTableView 控件中存在自定义的委托或模型,这些自定义组件可能会覆盖 `setRowHeight` 的效果。可以考虑在自定义委托或模型中添加相应的逻辑来实现设置行高。 解决方法可能包括: 1. 设置 QTableView 控件的 `verticalHeader` 为 `nullptr`,禁用垂直表头,以确保表格的第一列可以设置行高。 ```cpp ui->tableView->verticalHeader()->setVisible(false); ui->tableView->verticalHeader()->setSectionResizeMode(QHeaderView::Fixed); ``` 2. 尝试设置 QTableView 控件的 `sizePolicy` 为 `QSizePolicy::Expanding`,让表格可以根据窗口大小自动调整大小。 ```cpp ui->tableView->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); ``` 3. 尝试在 QTableView 控件的 `showEvent` 事件中设置行高,确保表格控件完全展示后再进行行高设置。 ```cpp void MyTableView::showEvent(QShowEvent *event) { QTableView::showEvent(event); setRowHeight(0, 200); } ``` 如果以上方法都不能解决问题,建议检查一下代码中是否存在其他不可预知的问题,或者提供更多上下文信息以便进行更精确的解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值