OStack程序员社区-中国程序员成长平台

标题: ios - 当其他 View 大小增加或减小时调整 UIView 宽度 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 08:56
标题: ios - 当其他 View 大小增加或减小时调整 UIView 宽度

我有一个带有侧边菜单的 UIView,该菜单来自左侧,并将右侧 View 从全屏推到较小的尺寸(全宽 - (菜单宽度))。 根据某人的建议,我通过更改菜单宽度约束中的常量来实现该效果:从 0 到 200。

(右侧 View )UIView 将保存我将加载到它的 View 具有此图像中看到的约束(菜单在左侧以蓝色显示):

img

我使用以下代码将新的 UIView 添加到 detailsView(上面提到的容器)中:

var viewNames = NSDictionary.FromObjectsAndKeys (new NSObject[] {
    view.View
}, new NSObject[] {
    new NSString ("detailsView")
});

detailsViewContainer.AddSubview (view.View);

view.View.TranslatesAutoresizingMaskIntoConstraints = false;
detailsViewContainer.AddConstraints (NSLayoutConstraint.FromVisualFormat ("H:|[detailsView]|", 0, new NSDictionary (), viewNames));

问题在于,当菜单折叠时,新添加的 View 始终具有全宽(1024),并且在菜单展开时,将 View 推到右侧的应用程序限制之外。 任何帮助将不胜感激。

提前致谢!



Best Answer-推荐答案


使主视图宽度约束(如果没有,则添加一个)为 <= 1024(不严格)。我会做以下事情:

地点:

当您的菜单(绿色 View )打开时,宽度约束将等于 200: enter image description here

一旦您将约束设置为 0,您的 View 也会调整主占位符(橙色 View )的大小: enter image description here

请通过以下链接找到 Storyboard示例: https://dl.dropboxusercontent.com/u/19503836/Main.storyboard

关于ios - 当其他 View 大小增加或减小时调整 UIView 宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31265903/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4