ios 获取button所在的cell对象, 注意:ios7 =< System Version < ios8 获取cell对象的差别

ios7 =< System Version< ios8 :

ios7 =< System Version < ios8  下 button.superview.superview .superview 是获取按钮所在的cell

 NSLog(@"2: cell ---- %@", button.superview.superview.superview);

2014-10-07 10:23:55.583 NeiHanShe[1407:60b] 2: cell ---- <RadioCell:0x155849d0; baseClass = UITableViewCell; frame = (0 0; 320 70); autoresize = W; layer = <CALayer: 0x1552af80>>

ios7 =< System Version < ios8 下 button.superview.superview 是获取的不是cell对象

 NSLog(@"2: cell ---- %@", button.superview.superview);

2014-10-07 10:22:37.993 NeiHanShe[1396:60b] 2: cell ---- <UITableViewCellScrollView:0x17d2d2e0; frame = (0 0; 320 70); autoresize = W+H; gestureRecognizers = <NSArray: 0x17d2d200>;
layer = <CALayer:

 ios8 > System Version || ios7 < System Version :

 ios8 > System Version || ios7 < System
Version 下button.superview.superview.superview 获取的是UITableViewWrapperView对象, 所以点击不同cell 但获取的内存相等, 这里就会出问题

 NSLog(@"2: cell ---- %@", button.superview.superview.superview

2014-10-07 10:27:07.903 NeiHanShe[2791:1186272] 2: cell ---- <UITableViewWrapperView:0x1663bbf0; frame = (0 0; 320 528); gestureRecognizers = <NSArray: 0x1663bb10>;
layer = <CALayer: 0x1663bbc0>; contentOffset: {0, 0}; contentSize: {320, 528}>

2014-10-07 10:27:09.617 NeiHanShe[2791:1186272] 2: cell ---- <UITableViewWrapperView:0x1663bbf0; frame = (0 0; 320 528); gestureRecognizers = <NSArray: 0x1663bb10>;
layer = <CALayer: 0x1663bbc0>; contentOffset: {0, 0}; contentSize: {320, 528}>

ios8 > System Version || ios7 < System
Version 下 button.superview.superview 才是获取按钮所在的cell

 NSLog(@"2: cell ---- %@", button.superview.superview);

2014-10-07 10:20:50.813 NeiHanShe[2775:1184682] 2: cell ---- <RadioCell:0x16ed6a30; baseClass = UITableViewCell; frame = (0 0; 320 70); autoresize = W; layer
= <CALayer: 0x16ea5fc0>>

2014-10-07 10:20:52.321 NeiHanShe[2775:1184682] 2: cell ---- <RadioCell:0x16ed6b44; baseClass = UITableViewCell; frame = (0 0; 320 70); autoresize = W; layer
= <CALayer: 0x16ea5fc0>>

时间: 2024-08-09 19:52:34

ios 获取button所在的cell对象, 注意:ios7 =&lt; System Version &lt; ios8 获取cell对象的差别的相关文章

ios 获取按钮所在的cell对象, 注意:ios8 ios7 获取cell对象的区别

ios7 : ios7 下 button.superview.superview .superview 是获取按钮所在的cell  NSLog(@"2: cell ---- %@", button.superview.superview.superview); 2014-10-07 10:23:55.583 NeiHanShe[1407:60b] 2: cell ---- <RadioCell: 0x155849d0; baseClass = UITableViewCell; f

IOS 通过button获取cell

在使用tableview时,有时我们需要在cell中添加button和label,以便添加某项功能,而且往往点这个button的方法中需要知道button所在cell中label内存放的值. 一般而言我们可以用tag来做,但当table有很多行的时候,设置tag就没有那么方便了,这里我介绍另外一种方法. 我们知道IOS里每一个视图都有父视图,那我们可不可以用这个方法获取cell呢? 经过一番查找测试发现superview方法可以找到button所在cell 给button写上这样的方法 -(vo

Environment类,获取程序所在机器信息

一.属性 CommandLine  获取该进程的命令行.CurrentDirectory 获取或设置当前工作目录的完全限定路径.ExitCode 获取或设置进程的退出代码.HasShutdownStarted 获取一个值,该值指示公共语言运行时 (CLR) 是否正在关闭.Is64BitOperatingSystem  确定当前操作系统是否为 64 位操作系统.Is64BitProcess 确定当前进程是否为 64 位进程.MachineName  获取此本地计算机的 NetBIOS 名称.New

iOS之Button segue弹出popOver消除(dismiss)问题

如图,因为程序需要,点击Button Ctrl+Dragging添加了一个UITableViewController,当然其余的Controller也可以,这样我们在方法 <img src="http://img.blog.csdn.net/20140817160213569?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGltaW5nMTk5MzY0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d

delphi根据进程PID获取程序所在路径的函数(用OpenProcess取得句柄,用GetModuleFileNameEx取得程序名)

uses psapi; {根据进程PID获取程序所在路径的函数}function GetProcessExePath(PID: Cardinal): string;varpHandle: THandle;buf: array[0..MAX_PATH] of Char;begin{获取进程句柄}pHandle := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, PID);{获取进程路径}GetModuleFileN

一行代码巧妙实现iOS返回button

一行代码巧妙实现iOS返回button: self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithImage:[[UIImage imageNamed:@"back"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]  style:UIBarButtonItemStyleDone target:self.navigationCon

一点一点学写Makefile(5)-获取文件所在路径

我们在开发一套代码时,应该保证工程放到任何一个目录中均可以编译成功,但是有时候链接库的时候会造成编译错误,本次就会告诉大家如何动态的获得工程所在的绝对路径 代码下载目录 选择Makefile-5 [sql] view plain copy //makefile CROSS = CC = $(CROSS)gcc CXX = $(CROSS)g++ DEBUG = CFLAGS = $(DEBUG) -Wall -c MV = mv -f RM = rm -rf LN = ln -sf TOP_PA

微信小程序实现城市定位:获取当前所在的国家城市信息

微信小程序中,我们可以通过调用wx.getLocation()获取到设备当前的地理位置信息,这个信息是当前位置的经纬度.如果我们想获取当前位置是处于哪个国家,哪个城市等信息,该如何实现呢? 微信小程序中并没有提供这样的API,但是没关系,有wx.getLocation()得到的经纬度作为基础就够了,其他的,我们可以使用其他第三方地图服务可以来实现,比如腾讯地图或百度地图的API. 以腾讯地图为例,我们可以去腾讯地图开放平台注册一个账号,然后在它的管理后台创建一个密钥(key). 然后在顶部菜单里

NSClassFromString 和 遍历UIView获取她所在的UIViewController的tips

一.NSClassFromString是NSObjCRuntime.h的方法 FOUNDATION_EXPORT Class __nullable NSClassFromString(NSString *aClassName); Description:Obtains a class by name.The name of a class.Parameters:aClassName The name of a classReturns:The class object named by aCla