cell中button怎么得到对应cell的indexpath 以及关于UITableViewCellContentView的问题
2013-07-16 19:33
218 查看
============================================================
博文原创,转载请声明出处
电子咖啡-专注于移动互联网
============================================================
我们用这种方法去创建cell
那么,相应我们button的selector中,我们可以通过下面的方法或侧indexpath
这里我们用了两个个superview,第一个得到UITableViewCellContentView,第二个得到相应的UITableViewCell。
同样。我们使用xib,拖进去一个UITableViewCell也是可以的
问题来了,
----------上面的方法我们成为方法A,下面的方法我们成为方法B
一次,我拖进去一个UIView,然后将class改为UITableViewCell,使用上面的方法不行。
而是只能使用一个superview
后来研究发现方法A中,使用的是系统的UITableViewCell,因此自动添加了UITableViewCellContentView
而在方法B中,我们是自己修改的,因此没有UITableViewCellContentView
打印方法:
打印结果:
博文原创,转载请声明出处
电子咖啡-专注于移动互联网
============================================================
我们用这种方法去创建cell
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ dequeueReusableCellWithIdentifier:cellIdentifier]; UITableViewCell* cell = [[UITableViewCell alloc]initWithFrame:CGRectMake(0, 0, 320, 44)]; return cell; }
那么,相应我们button的selector中,我们可以通过下面的方法或侧indexpath
-(void)buttonaction:(UIButton*)sender{ UIView* v=[sender superview];//UITableViewCellContentView UITableViewCell* cell=(UITableViewCell*)[v superview];//UITableViewCell NSIndexPath* indexPath= [_tbSelect indexPathForCell:cell]; }
这里我们用了两个个superview,第一个得到UITableViewCellContentView,第二个得到相应的UITableViewCell。
同样。我们使用xib,拖进去一个UITableViewCell也是可以的
问题来了,
----------上面的方法我们成为方法A,下面的方法我们成为方法B
一次,我拖进去一个UIView,然后将class改为UITableViewCell,使用上面的方法不行。
而是只能使用一个superview
UITableViewCell* cell=(UITableViewCell*)[sender superview];//UITableViewCell
后来研究发现方法A中,使用的是系统的UITableViewCell,因此自动添加了UITableViewCellContentView
而在方法B中,我们是自己修改的,因此没有UITableViewCellContentView
打印方法:
NSLog(@"----start"); for (UIView* v in [cell subviews]) { NSLog(@"v:%@",v); }
打印结果:
//方法A v:<UITableViewCellContentView: 0xa517a20; frame = (0 0; 320 44); gestureRecognizers = <NSArray: 0xa518f90>; layer = <CALayer: 0xa51e450>> //方法B ---start 2013-07-16 14:04:12.529 demo[2572:c07] v:<UILabel: 0x10f80a60; frame = (30 11; 215 21); text = 'Label'; clipsToBounds = YES; opaque = NO; autoresize = RM+BM; userInteractionEnabled = NO; tag = 101; layer = <CALayer: 0x10f80af0>> 2013-07-16 14:04:12.530 demo[2572:c07] v:<UICheckBox: 0x10f7f680; baseClass = UIButton; frame = (260 7; 30 30); opaque = NO; autoresize = RM+BM; tag = 102; layer = <CALayer: 0x10f7f740>>
相关文章推荐
- cell中button怎么得到对应cell的indexpath 以及关于UITableViewCellContentView的问题
- cell中button怎么得到对应cell的indexpath 以及关于UITableViewCellContentView的问题
- 关于点击UIScrollView跳转的问题,以及怎么在UITableView上展示滚动视图,九宫格,自定义Cell等
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath不执行的问题
- UITableView获取cell的row值(解决自定义cell里的button通过点击无法获得cell的indexpath的问题)
- 关于UITableView 不能回调 tableView: cellForRowAtIndexPath的问题
- UITableView获取cell的row值(解决自定义cell里的button通过点击无法获得cell的indexpath的问题)
- UITableView获取cell的row值(解决自定义cell里的button通过点击无法获得cell的indexpath的问题
- UI08_UItableView(关于cell滑动条消失,隐藏cell线,解决cell的线不对应问题)
- 关于 UITableView 中 网络获取图片 cell 自适应高度的问题
- Android 开发关于Button或TextView控件英文字符全部显示大小写问题
- 关于iOS`UITableView`中cell多选 全选自定义问题
- 学习ios碰到[UITableViewCellContentView setImage:]: unrecognized selector sent to instance 0x7fa450440dc0
- UICollectionView reloadData不走cellForRowAtIndexPath的问题
- UITableView取消cell选中状态关于deselectRowAtIndexPath
- 关于ViewPager预加载问题与怎么屏蔽预加载
- ScrollView中嵌套的viewPager,viepager高度设置为wrap_content时内容不显示问题以及与scrollview冲突的解决方案
- android 关于 webview 控制其它view的显示 以及更改view数据失败的问题总结
- 关于(UITableViewcell)contentView高度的问题
- iOS,关于真机tableViewCell上面button响应事件,不同版本崩溃问题解决