UIKit中是否有任何特殊控件可显示iPhone的应用程序列表屏幕,即底部带标题的图像
答案 0 :(得分:0)
我不知道基本库中有任何可用的控件来执行您提到的操作。然而,简单地子类化UIImageView并使其包含位于图像正下方的UILabel并不是非常困难。这可以通过多种方式完成,并不是很难。
一个基本想法是:
标题:
@interface ImageTextView : UIImageView {
UILabel *title;
}
-(id) initWithFrame:(CGRect)_frame;
-(void) setTitle:(NSString *)_title;
@end
实现:
@implementation ImageTextView
-(id) initWithFrame:(CGRect)_frame{
if (self = [super initWithFrame:_frame]){
self.layer.masksToBounds = NO;
title = [[UILabel alloc] initWithFrame:(CGRect){0,_frame.size.height,_frame.size.width,50}];
title.backgroundColor = [UIColor clearColor];
title.textColor = [UIColor whiteColor];
title.textAlignment = UITextAlignmentCenter;
[self addSubview:title];
}
return self;
}
-(void) setTitle:(NSString *)_title{
title.text = _title;
}
-(void) dealloc{
[title release];
[super dealloc];
}
@end
然后使用它你会使用如下代码:
ImageTextView *test = [[ImageTextView alloc] initWithFrame:(CGRect){0,0,100,100}];
test.image = [UIImage imageNamed:@"example.png"];
[test setTitle:@"TEST"];
[mainView addSubview:test];
希望这有帮助。
干杯。