UIImageView 未显示在 UITableView 标题中
Posted
技术标签:
【中文标题】UIImageView 未显示在 UITableView 标题中【英文标题】:UIImageView not displaying in UITableView header 【发布时间】:2008-10-16 00:34:53 【问题描述】:我的问题是我似乎无法从我的包中获取图像以正确显示。此方法位于控制 tableview 的视图控制器中。 headerView 与 .nib 文件中的 tableview 一起加载,并包含一些加载得很好的 UILabel(未显示)。有什么想法吗?
- (void)viewDidLoad
[super viewDidLoad];
[[self view] setTableHeaderView:headerView];
NSBundle *bundle = [NSBundle mainBundle];
NSString *imagePath = [bundle pathForResource:@"awesome_lolcat" ofType:@"jpeg"];
UIImage *image = [UIImage imageWithContentsOfFile:imagePath];
imageView = [[UIImageView alloc] initWithImage:image];
【问题讨论】:
【参考方案1】:如果您已经创建了一个 outlet 并将其连接到 Interface Builder 中的视图,则应该使用该视图,而不是动态创建 UIImageView。
//this assumes that headerView is an already created UIView, perhaps an IBOutlet
//also, imageViewOutlet is an IB outlet hooked up to a UIImageView, and added as
//a subview of headerView.
//you can also set the image directly from within IB
imageViewOutlet.image = [UIImage imageNamed: @"awesome_lolcat.jpeg"];
[[self view] setTableHeaderView: headerView];
【讨论】:
【参考方案2】:首先您需要确定您的图片是否正确加载。获取图像最快的方法是使用 UIImage 便捷方法 +[UIImage imageNamed: rawImageName]。
另外,这是一个 UITableViewController 吗? (不清楚,但暗示)。
imageView 在哪里使用?您在底部附近创建它,但似乎没有对它做任何事情。您可能想要创建图像视图,为其分配图像,然后将其作为子视图添加到 headerView。
//this assumes that headerView is an already created UIView, perhaps an IBOutlet
UIImage *image = [UIImage imageNamed: @"awesome_lolcat.jpeg"];
UIImageView *imageView = [[UIImageView alloc] initWithImage: image];
[headerView addSubview: [imageView autorelease]];
[[self view] setTableHeaderView: headerView];
【讨论】:
【参考方案3】:以编程方式添加子视图有效,但未正确链接到 Interface Builder 中的 UIImageView。我创建的视图(我认为)正确链接到我的 UITableViewController 中的 UIView 插座,但是当我初始化我的 imageView 时,它会创建一个新视图,而不是将图像放在我已经创建的视图中。
感谢您的回答。
【讨论】:
【参考方案4】:见http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Introduction/Intro.html 它将在节标题上显示 UIImageview。
【讨论】:
以上是关于UIImageView 未显示在 UITableView 标题中的主要内容,如果未能解决你的问题,请参考以下文章
UIImageView 未显示在 UITableView 标题中
UIToolbar 和 UIImageView 未显示在模拟器中
当我从与移动设备中的图库相同的多个 UIImageView 显示中点击 UIImageView 时,未调用 touchesBegan 方法