【问题标题】:Dynamic expandable UITableView with sections带部分的动态可扩展 UITableView
【发布时间】:2011-04-22 18:13:07
【问题描述】:

我目前正在创建一个带有可展开/可折叠部分的 UITableView。

我从 Internet 获取 JSON 格式的数据,将其存储在数组中,如下所示:

{Section 1 {s1 data 1, s1 data 2, ... }, Section 2 {s2 data 1, s2 data 2, 依此类推}}

部分可以是字母、年份或其他任何内容。

我这样创建表格视图标题:

GTHeaderView *header = [GTHeaderView headerViewWithTitle:[NSString stringWithFormat:@"%@", myArray.SectionValue]];
[header.button addTarget:self action:@selector(toggleSection) forControlEvents:UIControlEventTouchUpInside];

这很好,但是在我的“toggleSection”方法中,我找不到知道女巫部分已被触摸以折叠/展开的方法。

我知道我无法在选择器中发送参数...那么您认为哪种解决方案适合我的需求?

提前致谢!

【问题讨论】:

    标签: iphone uitableview collapse expand


    【解决方案1】:

    您可以将toggleSection 方法编写为:

    - (void)toggleSection:(id)sender
    {
       // send the sender object a message to find out the section number here...
    }
    

    当然还有更改您的 addTarget 行以指定 toggleSection 方法现在有一个参数:

    [header.button addTarget:self action:@selector(toggleSection:) forControlEvents:UIControlEventTouchUpInside];
    

    【讨论】:

    • 感谢您的回答,发送者对象返回给我的是 UIButton 而不是 GTHeaderView。所以我无法获得像部分标签这样的信息。有什么想法吗?
    • 现在我看到了GTHeaderView 类的用途,我找到了这个链接:cocoaminded.com/2010/02/06/… - 它显示了每个部分都有单独方法的简单案例;如果我猜你有固定或少量的部分,这将是可以的。
    • 我设法知道通过在 GTHeaderView 的 UIButton 中设置标签来触摸女巫部分,如下所示: header.button.tag = i;工作正常,非常感谢!
    猜你喜欢
    • 2015-10-14
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 2016-04-01
    • 1970-01-01
    • 2017-04-09
    • 1970-01-01
    • 2011-08-22
    相关资源
    最近更新 更多