如何将UITableView放在带有代码的UILabel下面

Áng*_*ela 2 iphone objective-c uitableview ios

我写了一个UILabel带有气象站名称的代码.后来,我添加了代码来放置UITableView一个网格视图,就像这个网站解释http://www.recursiveawesome.com/blog/2011/04/06/creating-a-grid-view-in-ios/

问题是现在所有屏幕都显示表视图,并且无法看到标签.

如何将元素按此顺序排列?

  1. UILabel
  2. UITableView

谢谢!

Rac*_*elD 7

1用笔尖:

如果您使用笔尖,您可以简单地调整标签和表格视图的大小/布局,以便根据需要定位它们.UITableView可以制作任何大小并占据屏幕的任何部分.

2没有笔尖

创建/分配/初始化标签和表,然后将它们添加到视图中:

[self.view addSubview:myTableView];
[self.view addSubview:myLabel];
Run Code Online (Sandbox Code Playgroud)

这一步的神奇之处在于您需要设置标签和表格视图的框架.这是真正定制的东西所以我无法帮助你没有更多的方向,但它可能看起来像这样:

// the number 10 is used for padding purposes
CGSize labelWidth = CGSizeMake(self.view.frame.size.width-20, 1000.0f);
CGSize textSize = [myLable.text sizeWithFont:myLable.font constrainedToSize:labelWidth lineBreakMode:UILineBreakModeWordWrap];
myLable.frame = CGRectMake(10, 10, labelWidth.width, textSize.height);


myTableView.frame = CGRectMake(0, myLable.frame.origin.y+10, self.view.frame.size.width, self.view.frame.size.height - (myLable.frame.origin.y+10));
Run Code Online (Sandbox Code Playgroud)

请注意,计算框架可以通过多种方式完成.您也可能需要手动重新计算帧以进行旋转.

希望这有帮助,祝你好运!