2010-03-11 10 views
0

각 셀의 사용자 지정 이미지 배경 가진 테이블보기가했습니다. 일반 모드에서는 배경이 완벽하고 모든 셀을 채 웁니다. tableView가 편집 모드로 들어가면 "-"버튼이 왼쪽에 나타나고 모든 객체가 들여 쓰게되고 왼쪽에는 배경이 문제가됩니다. 흰색 영역이 있습니다. 누구든지 나를 도울 수 있습니까? 배경 이미지는 모든 셀을 채울만큼 커지지 만 편집 모드로 이동됩니다. 내가 해결할 수 있을까? 고마워요!크기를 조정하는 방법 UITableViewCell 편집 모드에서 배경을

업데이트 :

- (void) layoutSubviews 
{ 

    UIImage *backgroundImage = [UIImage imageNamed:@"sfondoCella2.png"]; 
    UIImageView *bgView = [[UIImageView alloc] initWithFrame:self.bounds]; 
    bgView.image = backgroundImage; 
    self.backgroundView = bgView; 
    [bgView release]; 

} 

배경을 설정하고 appranetly 일반 모드에서 잘 작동하지만 당신이 편집 모드로 갈 때 모든 잘못 : 빨간색 circulare 내있는 UITableViewCell의 하위 클래스에서이 코드를 사용

삭제 버튼이 나타나지 않고 셀의 들여 쓰기 (IB에 설정된 배경과 완벽 함)가 올바르지 않습니다.

+0

배경 이미지를 설정하는 코드를 추가 할 수 있습니까? –

답변

2

IB를 통해 배경 이미지를 추가 할 방법이 없다고 생각합니다. 대신, 나는 당신이 UIImage 서브 뷰를 추가하고 있다고 가정하고있다.

코드의 표 셀에 배경 이미지를 추가했는데 사용자가 설명하는 문제가 없습니다.

UIImage *backgroundImage = [UIImage imageNamed:@"my-bg.png"]; 
UIImageView *bgView = [[UIImageView alloc] initWithFrame:self.backgroundView.frame]; 
bgView.image = backgroundImage; 
cell.backgroundView = bgView; 
[bgView release]; 

이상적으로 사용자 정의 UITableViewCell의 layoutSubviews 방법으로이 작업을 수행 할 수 있으며, 그 셀의 클래스임을 다음 IB를 말한다.

UITableViewCell을 확장하면 다음 방법을 무시하고 편집 모드 또는 선택시 셀의 모양을 정확하게 제어 할 수 있습니다.

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated 
- (void)setEditing:(BOOL)editing animated:(BOOL)animated 
+0

문제는 내가 선택한 셀에 2 개의 다른 배경이 있기를 원한다는 것이다. IB에서 배경 및 선택된 배경 적합성을 설정하면 셀을 누를 때 배경을 변경할 수 있습니다. 귀하의 방법으로 선택한 배경 이미지가 셀을 누를 때 작동하지 않습니다 – Luca

+0

사실, 자신의 UITableViewCell을 구현하면 setHighlighted 및/또는 setEditing을 무시할 수 있습니다. –

2

UITableViewCellcontentView의 하위보기로 이미지보기를 추가했을 것입니다. 이미지보기를 UITableViewCellbackgroundView으로 설정해야합니다.

backgroundView은 편집 모드로 이동하지 않습니다.

+0

인터페이스 빌더에 배경으로 추가했습니다. 나는 그것도 같다고 생각한다. – Luca

관련 문제