首页 > 代码库 > iOS开发 日常错误积累

iOS开发 日常错误积累

1、ios7 tableviewcell上面添加一个view,view上面有button,点击button不执行button的点击事件

解决办法:

self.view.userInteractionEnabled = YES;

[cell.contentView addSubview:self.view]

主要问题是cell的高度没有view本事的高度高,造成view没有完全在cell上,所以点击事件执行不了。



2、ios7 tableviewcell上面有button,但是button的点击效果没有,只有长按才能出现背景图

解决办法:转http://blog.csdn.net/zs449350247/article/details/21606973

一.IOS6的UITableViewCell 子视图(subviews)的容器是UITableViewCellContentView

    IOS7的UITableViewCell 子视图(subviews)的容器是UITableViewCellScrollView

   由于IOS7中添加了滑动后出现编辑按钮的操作,所以使用scrollView来处理UITableViewCellScrollView有对触摸的相应处理,导致按钮的点击效果被屏蔽了,但是点击事件还是在的,所以可以通过在

1.设置tableView.delaysContentTouches = NO;
2.同时在(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath代理方法中对scrollview把延迟触摸设置为NO即可

for (id obj in cell.subviews)

        {

            if ([NSStringFromClass([obj class])isEqualToString:@"UITableViewCellScrollView"])

            {

                UIScrollView *scroll = (UIScrollView *) obj;

                scroll.delaysContentTouches =NO;

                break;

            }

        }


;