2013-04-08 83 views
1

我有一個iPad應用程序,UISplitViewController始終顯示在橫向上。它的主控制器是一個UITableViewController。UITableViewCell具有比UISplitViewController上的主視圖控制器更寬的自定義selectedBackgroundView

我想擁有此UITableViewController上的單元格的selectedBackgroundView溢出到詳細ViewController。事情是這樣的:

image

我怎樣才能做到呢?
如果我嘗試設置紅色箭頭圖像(即342px寬),它將被調整爲320px。
我也嘗試繼承UIImageView並覆蓋setFrame忽略任何試圖調整他的形象調用,但仍然沒有運氣。

任何想法?

+1

嘗試設置所有的'clipsToBounds'你可以想到'NO'的所有視圖的屬性。一旦你得到了一些有用的東西,把它們一個接一個地拿出來,直到你剩下最少的自定義來達到你的效果。 – Undo 2013-04-08 20:15:03

+0

它的工作!非常感謝:)我會在回答中發佈我的更新代碼 – josemando 2013-04-09 01:20:03

回答

0

(更新於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 
+1

歡迎光臨:) – Undo 2013-04-09 03:22:08

相關問題