`
zani
  • 浏览: 354525 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

UITableViewCell 长按事件

 
阅读更多

 

	UILongPressGestureRecognizer *lpgr = [[UILongPressGestureRecognizer alloc] 
										  initWithTarget:self action:@selector(handleLongPress:)];
	lpgr.minimumPressDuration = 1.0; //seconds
	lpgr.delegate = self;
	[tv addGestureRecognizer:lpgr];
	[lpgr release];

-(void)handleLongPress:(UILongPressGestureRecognizer *)gestureRecognizer
{
    CGPoint p = [gestureRecognizer locationInView:tv];
	
	if(gestureRecognizer.state == UIGestureRecognizerStateBegan)
	{
		NSLog(@"UIGestureRecognizerStateBegan");
	}
	else if(gestureRecognizer.state == UIGestureRecognizerStateEnded)
	{
		NSLog(@"UIGestureRecognizerStateEnded");
	}
	else if(gestureRecognizer.state == UIGestureRecognizerStateChanged)
	{
		NSLog(@"UIGestureRecognizerStateChanged");
	}
	else if(gestureRecognizer.state == UIGestureRecognizerStateCancelled)
	{
		NSLog(@"UIGestureRecognizerStateCancelled");
	}
	else if(gestureRecognizer.state ==UIGestureRecognizerStateFailed )
	{
		NSLog(@"UIGestureRecognizerStateFailed");
	}
	
	
    NSIndexPath *indexPath = [tv indexPathForRowAtPoint:p];
    if (indexPath == nil)
        NSLog(@"long press on table view but not on a row");
    else
        NSLog(@"long press on table view at row %d", indexPath.row);
//	if([delegate respondsToSelector:@selector(regionBoatsDetailViewCtrlDidLongPressAt:)])
	//	[delegate regionBoatsDetailViewCtrlDidLongPressAt: [subDetailDataArray objectAtIndex:indexPath.row]];
}
 
分享到:
评论

相关推荐

    IOS长按拖动视图或者按钮更换位置

    在iOS开发中,实现“长按拖动视图或按钮更换位置”的功能是常见的交互设计,主要用于提升用户体验,让用户能够自定义界面元素的布局。这一功能主要涉及到触摸事件的处理、视图动画以及数据模型的同步更新。接下来,...

    长按删除简单实现

    2. **实现长按事件处理**: 在`handleLongPress(_:)`方法中,你可以根据需要处理长按开始和结束的逻辑。例如,当长按开始时,可以显示一个删除确认对话框;长按结束时,如果用户确认删除,则执行删除操作,否则取消...

    cell长按删除方便自己拓展

    在这里,`handleLongPress(sender:)`是处理长按事件的方法,你需要实现它来执行删除操作。你可以选择显示一个弹出框确认删除,或者直接删除并更新表格数据源: ```swift @objc func handleLongPress(sender: ...

    IOS 实现类似桌面删除应用程序的效果(长按 可编辑 删除)

    设置手势的minimumPressDuration属性,以决定用户需要按多久才能触发长按事件。例如,可以设置为0.5秒。 ```swift let longPressGesture = UILongPressGestureRecognizer(target: self, action: #selector...

    swift-长按即可移动cell的UITableView

    在这里,`handleLongPress(sender:)`是你的处理长按事件的函数,需要根据手势的状态判断是否开始拖动cell。 接下来,你需要实现`UITableViewDataSource`和`UITableViewDelegate`的相关方法,确保能正确地获取和设置...

    UITableView 和手势

    在UITableView中给每个UITableViewCell添加一个长按手势,在长按手势触发时,不会触发tableview的didSelectRowAtIndexPath方法,这样就不知道长按的是哪个cell,有一种简单的方法可以获得cell所在的indexPath。

    iOS长按删除界面动画

    总结,实现iOS长按删除界面动画涉及的主要步骤包括设置手势识别器、处理手势事件、执行动画以及处理用户确认的删除操作。这个过程需要结合Swift编程语言、UIKit框架以及良好的交互设计原则来完成,为用户提供流畅、...

    ios源码之UITableViewCell 视图扩展Demo.rar

    除了展示数据,UITableViewCell还可以响应用户的触摸事件。可以为cell的子视图添加 gesture recognizers 或者直接监听cell的触控事件,实现点击或长按等行为。 9. **性能优化**: 在大型数据列表中,优化cell的...

    长按即可移动cell的自定义TableView.zip

    如果需要自定义cell的外观,可以在`tableView(_:cellForRowAt:)`中创建并配置自定义的UITableViewCell子类。 总的来说,“长按即可移动cell的自定义TableView”是一个实用的iOS开发工具,它简化了实现单元格拖动...

    UITableViewCell的标记、移动、删除、插入

    用户可以长按cell来触发删除模式,或者通过滑动手势快速删除。为了实现这个功能,你需要实现`tableView(_:commit:forRowAt:)`方法,其中`EditingStyle`参数可以是`.delete`。在该方法内,删除对应的数据源项,并更新...

    HXMenuCell:长按cell弹出 自定义UIMenuController

    - `HXMenuTableViewCell`:这是`HXMenuCell`库中的自定义单元格类,包含了对长按事件的处理逻辑和显示自定义菜单的功能。 4. **KVO(Key-Value Observing)**: - `HXMenuCell`可能使用KVO来监听`...

    ios-使用tableview实现时间轴.zip

    4. 添加手势操作,如长按事件进行编辑或删除。 5. 支持时间线的动态加载和刷新,处理大量数据的情况。 总的来说,通过利用UITableView的强大功能和自定义Cell、Section Header,我们可以创建出直观、可交互的时间轴...

    安卓Android源码——UITableViewios风格控件.zip

    - Android的ListView支持OnItemClickListener和OnItemLongClickListener,用于处理单击和长按事件。这些监听器的接口与UITableViewDelegate中的方法对应。 - 为了实现类似UITableView的滑动删除效果,可以使用...

    ios-tableViewCell按钮弹出视图.zip

    在这个名为"TableMenuDemo"的项目中,我们可能看到一个关于如何在`UITableViewCell`中实现这一功能的例子。 首先,让我们来了解一下`UITableView`的基本知识。`UITableView`是iOS SDK中的一个核心组件,用于展示一...

    自定义tableview实现手势单元_Objective-C_下载.zip

    UITableView由多个单元格(UITableViewCell)组成,每个单元格可以显示不同的内容。为了实现手势识别,我们需要在UITableViewCell的子视图上添加手势识别器(GestureRecognizer)。 1. **创建自定义UITableViewCell...

    实现在界面列表中的文字加上超链接功能

    3. 单击与长按事件:在自定义Cell中,我们需要添加两个手势识别器,一个是UITapGestureRecognizer(用于单击事件),另一个是UILongPressGestureRecognizer(用于长按事件)。根据手势的触发,我们可以调用相应的...

    ios-tableView下的三级分类.zip

    7. **手势识别与交互**: 为了响应用户的触摸事件,我们可以添加手势识别器(如UILongPressGestureRecognizer或UIPanGestureRecognizer)到UITableViewCell上,以实现更多交互功能,比如长按弹出菜单或拖动排序。...

    安卓Android源码——UITableView ios风格控件.rar

    7. **事件处理**:监听点击事件、长按事件等,这些在Android中可以通过设置OnClickListener和OnLongClickListener来实现。 8. **性能优化**:由于UITableView在大数据量下依然能保持良好的性能,这个Android实现...

    仿QQ音乐播放器文件List控件

    3. **交互设计**:实现点击事件、长按事件等交互功能,让用户能够选择歌曲、播放、添加到收藏等。这需要用到事件监听器或手势识别技术。 4. **动画效果**:为了提升用户体验,我们可以添加一些动画效果,比如滑动时...

    仿照36Kr的App

    6. **处理用户交互**:如果需要,可以为Cell的某些元素添加手势识别器,监听用户点击或长按事件。 在仿照36Kr的App开发过程中,还需要考虑以下关键点: - **数据获取与刷新**:利用API获取36Kr的最新数据,如使用...

Global site tag (gtag.js) - Google Analytics