(更新於2013年10月1日,以使其在iOS7工作)
榮譽給用戶Erway軟件幫了我。
這裏是我得到的代碼工作:
在的UITableViewController:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// ...
UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"someId"];
UIImage *image = [UIImage imageNamed:@"image_name"];
SelectionImageView *imageView = [[SelectionImageView alloc] initWithImage:image];
[cell setSelectedBackgroundView:imageView];
[tableView setClipsToBounds:NO];
[[[cell contentView] superview] setClipsToBounds:NO];
// ...
}
這裏是SelectionImageView代碼:
@interface SelectionImageView : UIImageView
@end
@implementation SelectionImageView
- (void)setFrame:(CGRect)frame
{
// 342 is the width of image_name
if (frame.size.width == 342.f) {
[super setFrame:frame];
}
}
@end
嘗試設置所有的'clipsToBounds'你可以想到'NO'的所有視圖的屬性。一旦你得到了一些有用的東西,把它們一個接一個地拿出來,直到你剩下最少的自定義來達到你的效果。 – Undo 2013-04-08 20:15:03
它的工作!非常感謝:)我會在回答中發佈我的更新代碼 – josemando 2013-04-09 01:20:03