Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 视觉格式自动布局中灵活的大小元素如何决定使用哪个谓词_Ios_Autolayout_Predicate_Visual Format Language - Fatal编程技术网

Ios 视觉格式自动布局中灵活的大小元素如何决定使用哪个谓词

Ios 视觉格式自动布局中灵活的大小元素如何决定使用哪个谓词,ios,autolayout,predicate,visual-format-language,Ios,Autolayout,Predicate,Visual Format Language,在以编程方式将auto layout与visual format结合使用时,我对它在给定两个谓词时如何做出决策感到困惑。例如,以下约束: "H:[myTextView(>=300,<=700)]" 您不能使用>=和您的格式指定了两个约束: myTextView.width >= 300 及 myTextView.width因为我是为iOS 7开发的,我不想做设备检查,所以您提到的另一种约束方法似乎效果更好。虽然我不熟悉乘数和常数在这些约束类型中的实际作用。@tfrank37

在以编程方式将auto layout与visual format结合使用时,我对它在给定两个谓词时如何做出决策感到困惑。例如,以下约束:

"H:[myTextView(>=300,<=700)]"

您不能使用>=和您的格式指定了两个约束:

myTextView.width >= 300


myTextView.width因为我是为iOS 7开发的,我不想做设备检查,所以您提到的另一种约束方法似乎效果更好。虽然我不熟悉乘数和常数在这些约束类型中的实际作用。@tfrank377,您应该看看苹果关于约束的文档。您将看到乘法器和常量的用法与以下公式类似(针对您的情况):viewWidth=superviewWidthmultiplier+常量。因此,对于手机,320.223+228=299.36,对于iPad,相同的乘数和常数值为399.26(768*.223+228)。这肯定解释了约束解算器实际执行的更多操作。我试图避开带有确切数字的if/else语句。因此,标准的
NSLayoutConstraint
init可以很好地根据视图的宽度计算相对数。
myTextView.width >= 300
myTextView.width <= 700