`
woodn_z
  • 浏览: 44959 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论

自定义 UITableViewCell 怎样在子控件触发时得到 indexPath

阅读更多
例如 每个UITableViewCell里有个UITextField,当UITextField获得焦点时不会触发tableview的didSelectRowAtIndexPath方法,就不能知道触发是哪个cell,下面方法可以获得UITextField所在行的indexPath,方法很简单,注意两种方式。

如果是将textField添加在cell.contentView上:

//获得row
NSInteger row = [[self.tableView indexPathForCell:(UITableViewCell *)[[sender superview] superview]] row];

//获得section
NSInteger row = [[self.tableView indexPathForCell:(UITableViewCell *)[[sender superview] superview]] section];

//获得indexPath
NSIndexPath *indexPath = [self.tableView indexPathForCell:(UITableViewCell *)[[sender superview] superview]];


如果是直接添加到cell上:
//获得row
NSInteger row = [[self.tableView indexPathForCell:(UITableViewCell *)[sender superview]] row];

//获得section
NSInteger section = [[self.tableView indexPathForCell:(UITableViewCell *)[sender superview]] section];

//获得indexPath
NSIndexPath *indexPath = [self.tableView indexPathForCell:(UITableViewCell *)[sender superview]];
1
0
分享到:
评论

相关推荐

    ios 自定义折叠控件 一

    在iOS开发中,自定义控件是提升用户体验和界面独特性的重要手段。本文将深入探讨如何使用UITableView来实现一个自定义的折叠控件。在iOS应用中,UITableView因其高效的滚动性能和灵活的数据展示方式,被广泛用于显示...

    UITableViewCell使用自动布局根据内容动态调整高度

    在iOS开发中,UITableView是展示数据列表常用的控件,而UITableViewCell则是列表中的单个单元格。当单元格的内容不固定,比如文本长度可变时,我们希望单元格的高度能够根据内容自动调整,以保证良好的用户体验。这...

    tableView侧滑出现多个按钮

    在iOS开发中,UITableView是常用的数据展示控件,它允许用户滚动查看列表内容。而“tableView侧滑出现多个按钮”的功能则是对UITableViewCell的一种扩展,提供了更丰富的交互体验。这个特性常见于邮件应用中,当你向...

    自定义删除单元格

    在iOS开发中,UITableView是一种常见的数据展示控件,用于显示多行数据,用户可以通过滑动来浏览和交互。当我们需要实现自定义的删除单元格功能时,通常会涉及到UITableView的代理方法以及UI设计的个性化定制。`...

    ios-在CollectionView和TableView上添加按钮点击.zip

    要在单元格中添加按钮,我们需要自定义UITableViewCell的子类,并在其中添加UIButton。这可以通过 Interface Builder 或者纯代码实现。例如,可以在 `-tableView:cellForRowAtIndexPath:` 数据源方法中初始化和配置...

    UITableView删除功能(非编辑模式)更新版本

    在iOS开发中,UITableView是展示数据列表的重要控件,它为用户提供了一种直观的方式来浏览和交互大量信息。本文将深入探讨如何在非编辑模式下实现UITableView的动态删除功能,并结合描述中的“提示删除”来创建一个...

    swift-ExpandableCell✨采用Swift3编写可扩展可折叠的tableview单元格

    这通常涉及到自定义UITableViewCell子类,包含一个或多个子视图,并实现相关的触摸事件处理。 接下来,我们要关注如何实现可折叠效果。这通常涉及到以下步骤: 1. **状态追踪**:为每个可扩展单元格记录展开/折叠...

    ios-cell上添加运行时按钮.zip

    在常规情况下,我们可以重写`- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath`方法,但这只能在选中整个Cell时触发,而不是点击Cell内的按钮。 为了解决这个问题,...

    ios-tableview的滑动删除.zip

    在iOS开发中,UITableView是展示数据列表的一种常见控件,用户可以滚动浏览并与之交互。"ios-tableview的滑动删除.zip"这个压缩包很可能包含了一个关于如何实现UITableView滑动删除功能的示例项目或者教程。滑动删除...

    ios-TableViewCell上的按钮的点击.zip

    `UIButton`是iOS SDK中用于创建按钮的标准控件,它可以执行各种操作,如导航、提交表单或触发特定功能。 首先,我们需要在`UITableViewCell`的子类中定义一个`UIButton`实例,并在`cellForRowAt`方法中进行配置。...

    左划删除简单实现

    为了让用户能够触发左滑删除,需要在tableView上启用编辑模式。在`tableView(_:canEditRowAt:)`返回`true`,并设置`tableView(_:editingStyleForRowAt:)`以显示删除按钮。 ```swift func tableView(_ tableView: ...

    ios-系统自带tableVew全选.zip

    开发者需要自定义UITableViewCell来呈现特定的数据,并通过UITableViewDataSource协议来提供数据。这个协议定义了如numberOfSectionsInTableView和tableView(_:numberOfRowsInSection:)等方法,用于告诉表格有多少组...

    ios-菜单特效.zip

    在iOS开发中,菜单特效是用户界面中常见且重要的元素之一,它能够提供直观的导航方式,提升用户体验。"ios-菜单特效.zip"文件显然包含了关于实现这种效果的相关代码示例。下面,我们将深入探讨菜单特效的设计原理、...

    iOS中cell上定时器的使用

    在iOS开发中,`UITableView`是常用的展示数据的控件,而`UITableViewCell`则是其中的行元素。有时候,为了实现动态效果或者实时更新内容,我们可能需要在`UITableViewCell`中使用定时器(Timer)。本篇将详细介绍...

    uitableView 删除行

    在iOS开发中,UITableView是用于展示数据集合的重要控件,用户可以滚动浏览并交互。当需要动态地从数据源中移除某个项目时,我们通常会执行删除行的操作。"uitableView 删除行"这个主题主要涉及到如何在UITableView...

    UITableView

    这通常在`numberOfSections(in:)`或`tableView(_:numberOfRowsInSection:)`返回0时触发。 理解并熟练运用上述知识点,将使你能够自如地在Swift项目中构建功能丰富的UITableView。在实际开发中,你可能还会遇到性能...

    iphone UITableView划动删除的实现

    在iOS开发中,UITableView是展示数据列表的主要控件,它提供了丰富的交互功能,其中包括划动删除(Swipe to Delete)操作。这个功能允许用户通过在表格视图中的单元格上向左滑动来显示一个删除按钮,点击该按钮即可...

    下拉列表的实现20190108_Objective-C_ios_OC语言_下拉列表_

    4. **显示和隐藏下拉列表**:在用户点击按钮或者其他触发事件时,你可以调整`UITableView`的高度来实现下拉效果。 ```objc - (IBAction)showDropdown:(id)sender { CGRect frame = tableView.frame; if (frame....

    UICollectionView自适应cell不同大小

    在iOS开发中,`UICollectionView` 是一个非常强大的控件,用于展示可滚动的、多行多列的视图集合。这个控件允许我们创建复杂的布局,其中每个单元格(cell)可以根据需要显示不同的大小和样式。当我们需要实现...

    IOS下拉刷新,上拉加载更多

    在iOS开发中,下拉刷新(Pull-to-Refresh)和上拉加载更多(Infinite Scrolling)是常见的增强用户体验的功能,特别是在使用UITableView显示大量数据时。这两种特性使得用户可以轻松地获取新数据或查看列表的剩余...

Global site tag (gtag.js) - Google Analytics