(注意:当我第一次开始我的项目时,我选择使用 StoryBoards,所以我似乎无权访问任何 .nib 文件,以防我在这里要求的内容需要这种访问权限..)
我想创建一个方法,该方法采用图像和必要的坐标参数,并在调用该方法时将图像加载到当前视图控制器窗口上的特定位置。
我显然没有要求确切的方法,因为目前我什至无法加载一张图片!:)
我之前没有在 iOS 上尝试过图形,但我浏览了文档,这很令人困惑,所以我决定要求澄清一些可能对我和其他人有所帮助的问题。
显然,我需要创建一个 ImageView 对象来保存我想要的图像。但是,文档中没有提及如何实际和最终将图像加载到窗口上。此外,没有关于superView 是什么的实际解释。SuperView是我将要创建的第一个UIView 对象,还是系统为我创建的并且我可以通过调用来访问它?我是否需要将我正在创建的每个 UIView 对象作为子类添加到第一个 SuperView 中?通过子类化视图,我是否定义了它们在屏幕上相互重叠的方式?self.view
这是我正在使用的代码,用于测试目的,尝试在屏幕上加载一张图像:
#import "TestViewController.h"
@interface TestViewController ()
{
UIView *myView;
UIImage *myImage;
UIImageView *myImageView;
}
@end
@implementation TestViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self)
{
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// defining the size of my UIView..
CGRect viewRect = CGRectMake(10, 10, 100, 100);
// creating the UIView object
myView = [[UIView alloc] initWithFrame:viewRect];
// loading my image (a red square) into a UIImage object..
myImage = [[UIImage alloc] initWithContentsOfFile:(@"userCell.png")];
// creating a UIImageView object that will hold my myImage..
myImageView = [[UIImageView alloc] initWithImage:myImage];
// trying to make my Image load to the screen by adding the object that is
// encapsulating it to the UIView I created..
[myView addSubview:myImageView];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
@end
谢谢!