Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS:如何在viewDidLoad之后添加更多视图_Ios_Xcode_Uiviewcontroller - Fatal编程技术网

iOS:如何在viewDidLoad之后添加更多视图

iOS:如何在viewDidLoad之后添加更多视图,ios,xcode,uiviewcontroller,Ios,Xcode,Uiviewcontroller,我不熟悉IOS编程。我从XCode 4.3 SingleView应用程序创建的基本应用程序开始。 继续我的上述问题,我能够在Appdelegate中将视图programmaticaly添加到主ViewController中,但是如果我想在视图加载到viewDidLoad中后执行相同的操作,我将面临麻烦。我尝试使用添加子视图的相同逻辑,但我不确定在添加“viewDidLoad”内部后是否需要刷新视图 我的观点很简单,下面是代码 -(void)viewDidLoad { [super viewDi

我不熟悉IOS编程。我从XCode 4.3 SingleView应用程序创建的基本应用程序开始。 继续我的上述问题,我能够在Appdelegate中将视图programmaticaly添加到主ViewController中,但是如果我想在视图加载到viewDidLoad中后执行相同的操作,我将面临麻烦。我尝试使用添加子视图的相同逻辑,但我不确定在添加“viewDidLoad”内部后是否需要刷新视图

我的观点很简单,下面是代码

-(void)viewDidLoad
{

[super viewDidLoad];
UIBUtton *btn = [UIBUtton] alloc] initWithFrame:CGRect(10,10,50,50)];
[self.view addSubView:btn];
[self.view setNeedsDsiplay];
}

有人能帮忙吗?

你把方括号放错地方了。可能您是Objective-C新手。在创建基于UI的应用程序之前,您应该更加注意学习语法

UIBUtton *btn = [UIBUtton] alloc] initWithFrame:CGRect(10,10,50,50)];
应该是:

UIBUtton *btn = [[UIBUtton alloc] initWithFrame:CGRect(10,10,50,50)];


不需要。您没有正确实例化UIButton。您应该使用buttonWithType:方法

例如:

- (void)viewDidLoad {

[super viewDidLoad];

UIButton * btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];

[btn setFrame:CGRectMake(10.0, 10.0, 50.0, 50.0)];

[[self view] addSubview:btn];

}

谢谢是的,这是有效的,问题在于实例化UIBUtton。
- (void)viewDidLoad {

[super viewDidLoad];

UIButton * btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];

[btn setFrame:CGRectMake(10.0, 10.0, 50.0, 50.0)];

[[self view] addSubview:btn];

}