2010-02-20 4 views
0

У меня есть стандартное сгруппированное UITableView, которое я пытаюсь добавить к пользовательскому фону (вместо скучных серых полос). В конечном счете, моему дизайнеру хотелось бы, чтобы представление таблицы «скользнуло» или «плавало» над фоном. Я дошел до того, что установил фон таблицы, чтобы «очистить», надеясь показать статичное изображение внизу.UITableView «плавать» поверх фона

Как я могу изменить мои текущие классы и контроллеры представления, чтобы достичь этого?

ответ

1

Вам нужно сделать одну из двух вещей.

1) Добавить изображение под таблицей. Вы можете сделать это так:

[tableview.superview insertSubview:imageView belowSubview:tableview]; 

Оговорки здесь является то, что иногда лучше не манипулировать стек просмотра в коде.

2) Вы можете нарисовать фон самостоятельно в подклассе UITableView. Если вы это сделаете, убедитесь, что вы сначала установили цвет bg таблицы. Вот мой класс:

@interface ATSImageTableView : UITableView { 
    UIImage *backgroundImage; 
} 

@property (nonatomic, retain) IBOutlet UIImage *backgroundImage; 

@end 

и:

@implementation ATSImageTableView 

@synthesize backgroundImage; 

- (void)drawRect:(CGRect)rect { 
    [backgroundImage drawAtPoint:CGPointZero]; 

    [super drawRect:rect]; 
} 

- (void)dealloc { 
    [backgroundImage release]; 
    [super dealloc]; 
} 

@end 

Надеется, что это помогает!

Смежные вопросы