UIButton が属する UITableViewCell を次のように取得しています。
-(void)buttonHandler:(UIButton *)button {
OrderCell *cell = [[button superview] superview];
NSLog(@"cell.item = %@", cell.item.text);
そして、iOS 7より前のすべてで問題なく動作します。しかし、私に与えます:
[UITableViewCellScrollView アイテム]: インスタンス 0x17ae2cf0 に送信された認識されないセレクター
iOS 7 でアプリを実行した場合。しかし、実行した場合:
-(void)buttonHandler:(UIButton *)button {
OrderCell *cell = [[[button superview] superview] superview];
NSLog(@"cell.item = %@", cell.item.text);
その後、iOS 7 で動作しますが、それ以前では動作しません?!?!?!
私はこれを行うことで問題を回避しています:
OrderCell *cell;
if([[[UIDevice currentDevice] systemVersion] isEqualToString:@"7.0"])
cell = [[[button superview] superview] superview];
else
cell = [[button superview] superview];
NSLog(@"cell.item = %@", cell.item.text);
しかし、WTF が起こっている!? なぜこれが起こるのか誰か知っていますか?
ありがとう!