UITableView 部分标题内的下拉 UIView

Posted

技术标签:

【中文标题】UITableView 部分标题内的下拉 UIView【英文标题】:Dropdown UIView inside UITableView Section Headers 【发布时间】:2013-05-13 04:36:21 【问题描述】:

作为设计要求的一部分,我需要将自定义下拉 UIView 添加到 UITable 部分标题中。我已成功将下拉 UIView 添加到部分标题中,但是当我尝试单击下拉列表中的 Title 时,它​​不会识别出我在下拉 UIView 上进行了选择,而是会触发大的 didSelectRowAtIndexPath UITableView 下面。如果将其添加到节标题中,似乎我无法选择显示在节标题高度之外的项目。

我没有为弹出 UIView 使用 UITableView。每行都是一个 UIButton 并附加有 Touch Up Inside 事件侦听器。当我尝试点击按钮时,它不会检测到我点击了按钮,但它会认为我点击了 Cupertino。每个按钮都附有一个标签。

这是我如何处理事件的示例。

-(IBAction)menuButtonPressed:(UIButton *)sender

    [sender setSelected:!sender.isSelected];

    switch (sender.tag) 
    
        case 0:        
         #Do something
        break;

        case 1:        
         #Do something
        break;
   

当我尝试扩展节标题高度时,可以单击位于节标题内的按钮。例如标题 1 可以单击,但标题 2 和 3 不能。

【问题讨论】:

如果您尝试选择标题 1 单元格然后不起作用? 不,它不起作用。将选择行 (Cupertino)。 【参考方案1】:

如果您的项目不限制您使用第三方库,我建议您使用FPPopover。它是可定制的,如果你愿意,你可以让它看起来像你的。此外,它还有方法 buttonClicked,您可以使用它来解决您的问题。它的行为也很像 UIPopover,但你也可以在 iPhone 上使用它。

希望对你有帮助

【讨论】:

感谢您的帮助。我可以使用 3rd 方库,但只是想知道是否有任何解决此问题的方法,因为我已经对其进行了编码。我会试试 FPPopover。 您在问题中提供的信息还不够。当然,它会使用 didSelectRowAtIndexPath 方法来解决您的问题。另外,你创建的 UIView 应该是 UITableViewController 并且有自己的类

以上是关于UITableView 部分标题内的下拉 UIView的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 滚动到内容大小内的部分

带有 UITapGestureRecognizer 的 UIView 通过拖动到它下面的 UITableView ?

UIScrollView 内的 UITableView 在 Xcode 7.0.1 中部分不可见?

下拉时 UITableVIew 标头没有弹跳

如何在 UITableView 顶部添加一个一起滚动的视图,但在滚动后粘在顶部

UITableView 内的 UITextView