佳为好友

原:自定义UITableViewCell的旋转问题

创建:2012.08.20
自定义UITableViewCell的旋转时,无法旋转。解决办法有3种:
第一种:
1)在didRotateFromInterfaceOrientation中,调用reloadData
2)准备2个xib文件,一个是横屏,一个是竖屏。
3)  在cellForRowAtIndexPath中,根据不同的方向,选择不同的xib。注意,不使用dequeueReusableCellWithIdentifier,而是每次都创建新的cell。
第二种:
1)在didRotateFromInterfaceOrientation中,调用reloadData
2)在cellForRowAtIndexPath中,根据不同的方向,改变frame的值。注意:不需要改变cell的值,只需要改变cell里面的view的值。例如:

    UIView *contentView = [cell.subviews objectAtIndex:0];    

    if (UIDeviceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation))

    {

        contentView.frame = CGRectMake(0, 0, 480, cell.frame.size.height);

    }

    else {

        contentView.frame = CGRectMake(0, 0, 320, cell.frame.size.height);        

    } 


第三种:

不使用自定义的cell,而是使用普通的cell,然后使用contentView来进行配置。

注意:这种方法我没有试验过,不知道是否可以,只是猜测而已。因为普通的cell的旋转是没有问题的。



+++++

posted on 2012-12-29 10:49 佳为好友 阅读(955) 评论(0)  编辑 收藏 引用 所属分类: UI


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

<2012年12月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

留言簿(1)

随笔分类

搜索

最新评论

评论排行榜