2011-06-03 120 views
0

我有一个可以绘制函数的计算器应用程序。我被困在一个练习,说:UIViewController中弹出窗口的大小

你的CalculatorViewController也需要知道(并在适当的方法要求时报告)在弹出窗口中显示时它应该是多大。这样做的最好方法是在CalculatorViewController的self.view中查找所有视图的边界框,然后在边缘周围添加一点空白。要计算视图的边界框,您需要查看CalculatorViewController的self.view及其所有框架的子视图。您可能会发现CGRectUnion()函数便于执行此任务。

我做了什么?

+0

这听起来像你正在寻求家庭作业的帮助。 – 2011-06-03 23:12:10

回答

1

试试这个

CGRect boundingRect = CGRectZero; 
for (UIView *view in self.view.subviews) { 
    boundingRect = CGRectUnion(view.frame, boundingRect); 
} 

self.view.subviews包含所有视图的子视图。通过遍历它们并将每个子视图的框架添加到当前boundingRect和子视图的联合中,您应该获得足够大的CGRect来容纳所有子视图。您可以添加一个边距。

+0

谢谢,这就是我需要的一切 – pacoflaco 2011-06-04 00:04:17