我想在 View 顶部添加一个 subview ,我必须重新计算所有其他 View 的原点y值,然后重新放置它们以为新添加的 View 留出空间。

这是非常无聊的,因为我知道android有relativelayout或linearlayout可以帮助自动做到这一点。

如何在ios开发中轻松解决此问题?

最佳答案

我创建了一个库来解决此问题:CSLinearLayoutView

您可以这样使用它:

// create the linear layout view
CSLinearLayoutView *linearLayoutView = [[[CSLinearLayoutView alloc] initWithFrame:self.view.bounds] autorelease];
linearLayoutView.orientation = CSLinearLayoutViewOrientationVertical;
[self.view addSubview:linearLayoutView];

// create a layout item for the view you want to display and add it to the layout view
CSLinearLayoutItem *item = [CSLinearLayoutItem layoutItemForView:someView];
item.padding = CSLinearLayoutMakePadding(5.0, 10.0, 5.0, 10.0);
item.horizontalAlignment = CSLinearLayoutItemHorizontalAlignmentCenter;
item.fillMode = CSLinearLayoutItemFillModeNormal;
[linearLayoutView addItem:item];

// add more items

关于iphone - iOS iPhone开发中的Relativelayout或LinearLayout?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7072966/

10-10 18:44