我正在尝试向UITableViewCell添加子视图,而我正在使用的设计要求这个特定的子视图(图像)需要比实际的UITableViewCell更大,因此部分重叠其兄弟.
所以我设置了我的表格单元格,生成了我的图像并将其添加到单元格的contentView中:
// rowHeight for the UITableView is 45.0f
UIImage *image = [self createCellThumbnail: someImage];
UIImageView *thumbView = [[UIImageView alloc] initWithFrame: CGRectMake(150, -5, 55,55)];
thumbView.transform = CGAffineTransformMakeRotation(0.1f);
thumbView.image = image;
cell.clipsToBounds = NO;
cell.contentView.clipsToBounds = NO;
[cell.contentView addSubview: thumbView];
Run Code Online (Sandbox Code Playgroud)
当图像"溢出"到其下方的单元格中时,图像的顶部始终被剪裁,如下所示:
有谁知道我现在的做法是否有可能做到?
或者我应该想办法在绘制完所有单元格后将这些图像绘制到UITableView上(它是一个不可滚动的tableview,这样就可以了,并且相当容易).
更新:
还尝试添加以下内容,但无济于事:
cell.opaque = NO;
cell.contentView.opaque = NO;
cell.clearsContextBeforeDrawing = NO;
cell.contentView.clearsContextBeforeDrawing = NO;
cell.clipsToBounds = NO;
cell.contentView.clipsToBounds = NO;
Run Code Online (Sandbox Code Playgroud) 我有一个UINavigationController,它被推送到DetailsViewController.在这个DetailsViewController中,我想使用每个UINavigationController附带的工具栏(至少从iPhone OS3.0开始).
因此,在我的DetailsViewController中的viewDidLoad中,我创建了一个UIBarButtonItem,我将它添加到一个数组并将其交给导航控制器:
- (void) viewDidLoad {
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemBookmarks target:self action:@selector(selectTemplate)];
NSArray *items = [NSArray arrayWithObject: item];
TestUIAppDelegate *delegate = [[UIApplication sharedApplication] delegate];
UINavigationController *navController = delegate.navigationController;
[navController setToolbarItems: items animated:NO];
[navController setToolbarHidden: NO animated: YES];
}
Run Code Online (Sandbox Code Playgroud)
但是,出于某种原因,当UIToolbar动画到屏幕上时,该项目不会添加到工具栏中.
是否有某种特定的顺序需要使用UIToolbar完成这项工作?
PS:应用程序处于(强制)横向模式,navigationController.view对其进行了旋转变换.这与它有什么关系吗?