我的iPhone应用程序中有一个非常奇怪的问题。
我有两个%// Part 1.
[ps,~] = dpsimplify([x(:),y(:)], 1e-3); %// adjust "tol" above noise level
xs = ps(:,1);
ys = ps(:,2);
%// Part 2
I = 1:numel(xs)-2;
sgnA = sign( ...
xs(I+0).*ys(I+1) ...
+ xs(I+1).*ys(I+2) ...
+ xs(I+2).*ys(I+0) ...
- xs(I+0).*ys(I+2) ...
- xs(I+1).*ys(I+0) ...
- xs(I+2).*ys(I+1) ...
);
k_inflex = find(2 == abs(diff(sgnA)));
x_inflex = xs(k_inflex);
y_inflex = ys(k_inflex);
子类UIViewController
和A
。
从B
UIViewController
B
内的方法调用b
类UIViewController
(我们称之为A
)a
1}})。
但是当显示b
时,b
的“根”视图的框架和边界在viewDidLoad
和viewWillAppear
的调用之间发生了神奇的变化。
我不知道,为什么会这样。据我所知,我所有的其他观点都没有这个问题。
这些是框架和界限:
viewDidLoad
中的:
self.view.frame: {0, 0}, {375, 667}
self.view.bounds: {0, 0}, {375, 667}
viewWillAppear:
中的:
self.view.frame: {0, 64}, {375, 554}
self.view.bounds: {0, 0}, {375, 554}
我做了一个截图来证明这个问题。
黄色区域是self.view
的{{1}}。红色和绿色是b
的子视图。他们只是我的布局。我认为它们对self.view
框架或边界没有任何影响。
有没有人知道造成这个问题的原因是什么?
答案 0 :(得分:0)
好的,经过数小时(字面意思!)的调试后,我发现了我的错误:我忘了在我的自定义init方法中调用self = [super init];
。这引起了一些奇怪的行为。
感谢您的有益评论!