-1

我似乎无法打印我的第二个 UILabel ,但是第一个被打印了。任何帮助表示赞赏。

我正在尝试在蓝色 uiview 上打印黄色标签,就像我已成功使用红色标签一样。

这是我的代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:  (NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
CGRect frame = CGRectMake(10, 30, 100, 100);

UILabel *myLabel = [[UILabel alloc] initWithFrame:frame];
UILabel *myLabel2= [[UILabel alloc] initWithFrame:frame];


myLabel=[[UILabel alloc] initWithFrame:CGRectMake(50, 50, 100, 100)];
myLabel.backgroundColor = [UIColor redColor];
myLabel.text = @"Hello";

myLabel2=[[UILabel alloc] initWithFrame:CGRectMake(50,300,100,100)];
myLabel2.backgroundColor=[UIColor yellowColor];
myLabel2.text=@"World!";


UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(1, 1, 500, 500)];
UIView *myView1 = [[UIView alloc] initWithFrame:CGRectMake(65,50,200,200)];
UIView *myView2= [[UIView alloc] initWithFrame:CGRectMake(65,260,200,200)];

myView1.backgroundColor=[UIColor greenColor];
myView.backgroundColor=[UIColor cyanColor];
myView2.backgroundColor=[UIColor blueColor];



[myView addSubview:myView1];
[myView addSubview:myView2];
[myView2 addSubview:myLabel2];
[myView1 addSubview:myLabel];
[self.window addSubview:myView];
[self.window makeKeyAndVisible];
return YES;
}

谢谢你的帮助。

4

2 回答 2

0

更改此行

myLabel2=[[UILabel alloc] initWithFrame:CGRectMake(50,300,100,100)];

myLabel2=[[UILabel alloc] initWithFrame:CGRectMake(50,30,100,100)];

原因是您label2超出了您的视野

希望这可以帮助你..

于 2013-01-24T13:55:34.797 回答
0


“实际上,您的标签被绘制在 myView2 的视图区域之外。”

myView2 的宽度和高度为 200,200。
myLabel2 的 y 位置为 300,大于其 superView(myView2) 的高度。:)。

myLabel2 绘制在 myView2 的框架之外。视图的 y 位置总是相对于其父视图。

于 2013-01-24T14:04:19.347 回答