调整大小时,Xcode UITableView Selection不起作用

时间:2012-02-08 17:06:48

标签: ios xcode uitableview selection

UITableView行选择存在问题, 在View上加载(根据配置)我将TableView的大小调整为50px,在这种情况下,单击和选择在这50个像素中不起作用。

if (Config.alza){
    //Se non ho nessuno sconto incremento la dimensione della lista di 50Px necessari per mostrare gli sconti testata
    CGRect frame = ListaOrdine.frame;
    frame.size.height += 50;
    ListaOrdine.frame = frame;
}

//Attivo la gestione del click
TapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(Click:)];
[TapGesture setNumberOfTapsRequired:1]; 
[TapGesture setCancelsTouchesInView:NO]; //Serve per non bruciare l'evento click
[ListaOrdine addGestureRecognizer:TapGesture];

有人有什么想法吗?

3 个答案:

答案 0 :(得分:0)

您需要使用表格视图委托

指定行的高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{

    //Your existing code
    if (Config.alza){
        //Se non ho nessuno sconto incremento la dimensione della lista di 50Px necessari per mostrare gli sconti testata
        return yourDefaultCellHeight + 50;
    }

    return yourDefaultCellHeight;

}

答案 1 :(得分:0)

实施此方法- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

答案 2 :(得分:0)

我已经通过调整大小后的带来的tableview控件解决了

if (Config.alza){
    //Se non ho nessuno sconto incremento la dimensione della lista di 50Px necessari per mostrare gli sconti testata
    CGRect frame = ListaOrdine.frame;
    frame.size.height += 50;
    ListaOrdine.frame = frame;
    [self.view bringSubviewToFront:ListaOrdine];
}

问题似乎是更新的50px tableview被另一个触发事件而不是tableview的视图所覆盖