首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ios-tableView的touchesBegan事件和didSelectRowAtIndexPath方法

大家好,又见面了,我是你们的朋友全栈君。 今天做了个测试,看看tableView如果实现了touchesBegan方法和实现了didSelectRowAtIndexPath点击的时候会去实现哪一个?...先附上测试的函数 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { NSLog(@"---...---"); } -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath...{ NSLog(@"llllll"); } 红色的代表tableView,蓝色的代表cell,我不管是点击cell还是点击tableView,监听到的方法都是touchesBegan。...下面是输出结果,输出的都是touchesBegan中的方法 这个是视图 而当tableView没有实现touchesBegan,当我们点击cell的时候是有反应的 以下是输出结果 视图如下所示

36610

在iOS中怎样创建可展开的Table View?(下)

(上) 展开和合拢 我猜这部分可能是你最期望的了,因为本次教程的目标将会在在部分实现.第一次我们设法让顶层的cell,在它们点击的时候展开或者合拢.以及显示或者隐藏合适的子cell...."idCellValuePicker"那么我们有了一个我们感兴趣的cell. func tableView(tableView: UITableView, didSelectRowAtIndexPath...看下面的代码: func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {....我们要动态地组成全名,一旦姓和名都输入了.我们需要指定包含文本框的cell的索引.最后我们会在顶级cell更新显示的文本(全名),并且会刷新tableView,如下代码: func textfieldTextWasChanged...总结 正如我开始说的,创建可展开的tableView在某些时候真的很有用,从麻烦当中创建新的视图控制器,可以用这种tableView来处理,它可以为app节省时间.在这次教程先前的部分,我向你提出了一种创建可展开

1.5K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    接口中可以包含的组成部分

    接口中可以包含的组成部分   1.抽象方法   2.常量   3.默认方法(JDK8)   4.静态方法(JDK8)   5.私有方法(JDK9) 1.抽象方法   public abstract 返回值类型...方法名称(参数类型 参数名称);  注意:     1.接口中的抽象方法,修饰符如果自己写必须是:public abstract     2.接口中的抽象方法,修饰符可以省略不写,默认就是:public...1.创建对象       接口名称 引用名 = new 实现类名称();     2.调用       引用名.抽象方法(参数); 注意:     1.左边是接口类型,那么只能调用接口当中定义好的内容...,不能调用右侧实现类当中的特有内容。...(即接口隔离、接口通用)     2.当调用接口当中的抽象方法时,真正运行的是右侧new的时候类的具体方法内容。     3.总结一句话:编译的时候看左边,运行的时候看右边。

    2.6K10

    实际操作-手把手探究tableViewCell上的控件点击事件进阶篇:实际项目操作

    现在学iOS的很多都是培训出来的,给他需求,他知道代码要怎么打才能让App跑出符合需求的效果,但是很多稍微底层的,或者原理性比较不了解,下面就让我们以纯iOS小白的视角,手把手一步步探究tableView...答:因为我们一开始并不知道要点击的是哪行的数据->在tableView的行点击(didSelectRowAtIndexPath)的时候,由于我们可以拿到点击的下标,通过下标可以知道我们点击的是哪行,此时发送数据请求...之后AFN请求完毕,获取数据成功,以往我们经常调用tableView的刷新数据方法-reloadData,但是我们会发现didSelectRowAtIndexPath并不会再tableView reloadData...---- -------------------------华丽分割线------------------------ 正确做法:不在tableView的行点击进行数据请求,要拿到数据下标,并不只有didSelectRowAtIndexPath...原理解释 如图:我们并不调用行点击事件,但是当我们点击cell的按钮,通过代理把cell的内容(如上图的内容:b)回传到控制器tableView上显示的时候,从tableVIew展示的内容-->b,我们就可以知道刚才点击的是哪个

    3.7K50

    iOS点击TableView的cell显示弹出动画

    最近使用豌豆荚一览的app时看到它的点击cell后弹出界面的动画很帅,所以自己琢磨着实现了一个,效果如下: image 仔细观察的话效果分为几个部分,点击cell的时候,首先背景会出现阴影,只有点击的..._bgView.backgroundColor = [UIColor colorWithWhite:0 alpha:0.5]; } return _bgView; } 接下来就是动画的部分了...,我们去到点击cell的方法,也就是 (void)tableView:(UITableView )tableView didSelectRowAtIndexPath:(NSIndexPath )indexPath...方法,代码如下: #pragma mark TableView Delegate // 选中某一行 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath...进入详情界面 [bself.navigationController pushViewController:detailVC animated:NO]; }); } 注释解释了大部分的内容

    1.5K10

    iOS 9 Storyboard 教程(二下)

    当用户点击Cancel按钮的时候,这个控制器将会关闭并且不管你输了什么数据都不会保存.这个部分用unwind segue已经起作用了....viewController–只有初始viewController是被立即加载的.因为你的初始viewController是一个 TabBarontroller,它所包含的两个viewController...现在让我们给这个新的控制器一些数据来显示吧.在GamePickerViewController.swift中,把一个具有硬编码值的games字符串数组添加到顶部: var games:[String]...现在添加代理方法tableview(_:didSelectRowAtIndexPath:) : override func tableView(tableView: UITableView, didSelectRowAtIndexPath...不幸的是,unwind segue方法在tableView(:didSelectRowAtIndexPath:)之前执行,所以selectedGameIndex没有更新.

    2.2K10

    直播卖货小程序源码中,商品分类页面是如何实现的

    在直播卖货小程序源码中,一般都包含商品分类页面,如下图,那么这个页面是如何通过代码实现的呢?下面,小编以iOS版本的开发过程为例,来讲述下实现过程。...图片1.png 左边一级分类使用tableview来展示,右边的耳机分类使用collectionview来展示,主要就是实现一二级分类的联动。下面主要讲下点击和滑动。...1、左侧一级分类的点击实现 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath...{     [tableView deselectRowAtIndexPath:indexPath animated:YES];     if (indexPath.row !...        //判断滑动是不是因为点击一级分类引起         isClickLeft = YES;         selectTableIndex = indexPath.row;         [tableView

    1.2K20

    TableView加载图片的优化逻辑

    ---- 日常中,最常使用的空间非UITableView莫属了。 但是当TableView的cell中包含图片时,使用SDWebImage加载图片虽然是异步过程,但是仍然十分占用系统资源。...那么我们就要想一个办法去优化加载图片的逻辑。 此处,我只讲我自己的想法,或许也有更好的逻辑,还希望在下面留言指点我一下。...我的想法是TableView滚动的时候不去加载未加载过的图片,停止滚动后再从网络加载。...已经加载过得图片,无论什么时候都加载该图片(因为SDWebImage会将加载过得图片缓存下来,再次加载的时候从缓存中取,这样就不用开辟线程下载图片了)。 ? 啊.png ?...屏幕快照 2016-04-16 下午9.34.14.png 如上,就是我对TableView加载图片的优化逻辑。

    1.1K30

    iOS开发:实现点击常用控件弹出地区选择框(万能方法)

    的cellForRowAtIndexPath代理方法里面的操作如下 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath...handler:nil]]; [self presentViewController:alert animated:YES completion:nil]; } 4、在UITableView的didSelectRowAtIndexPath...代理方法里面的操作如下 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath...[self alterRegion]; //调用地区选择弹出框的方法 } } 实现之后的效果如下图所示: 1.png 这里虽然介绍的是cell的点击事件的弹框处理,其他控件的使用方法类似,...最后 以上就是本章的全部内容,欢迎关注三掌柜的微信公众号“程序猿by三掌柜”,三掌柜的新浪微博“三掌柜666”,欢迎关注!

    1.7K32

    UITableViewCell系列之(一)让你的cell支持二次编辑

    如下图,先来看看我所说的可编辑的cell的效果: ? enableEditCell.gif 开发中,有时候需要对tableView的某一行的内容(通常是文本)进行二次编辑。...另外一种方法是直接在当前控制器(的界面)上以动画(甚至是没有动画)的形式弹出一个UITextView,在UITextView上修改文本内容,修改完成后再隐藏/移除UITextView,把内容重新显示到tableView...做的好的同学,可能还不忘弹出UITextView的时给tableView添加一个蒙版或者模糊效果以突出重点,提高用户的体验度。以上的两种方式算是中规中矩。...思路如下: 注意:以下操作全部是在didSelectRowAtIndexPath:方法中进行的 获取点击的那一行cell在tableView坐标系上的frame,并转换为view坐标系上的frame,...:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSLog(@"选中:%ld行",indexPath.row

    7.8K40
    领券