有没有办法按百分比划分屏幕(不等于百分比) 我需要将屏幕分成两部分1/3和2/3。 我知道如何分成相等的部分,但无法弄清楚如何分裂为不相等。
由于
答案 0 :(得分:55)
制作一个"相等的宽度"视图与超级视图之间的约束,一个视图的乘数为2:3,另一个视图为1:3。见图。 "等高"如果你想分开另一个方向。
答案 1 :(得分:24)
步骤:
var tabled = document.getElementById("table_data");
var newRowContent = '<tr><td></td><td><input type="text" name="date" id="date" class="numbersOnly" onchange="vdateRange()" placeholder=""/></td><td><input type="text" name="reading1" class="numbersOnly" onkeypress="validate(event)" /></td><td><input type="text" name="reading2" class="numbersOnly" onkeypress="validate(event)" /></td><td><input type="text" name="reading3" class="numbersOnly" onkeypress="validate(event)" /></td><td><input type="text" name="remark"/></td></tr>';
//<button type="button" name="delete_row" class="glyphicon glyphicon-remove-sign" onclick="deleteRow(this)"></button> #delete button
//rows = table.insertRow(z);
if (tabled.rows.length > 0) {
$("#table_data tbody tr").remove();
for(i = 0; i < z+1; i++){
$('#table_data > tbody').append(newRowContent);
}
上拖动两个UIView objects
。viewcontroller
superview
的右上角,顶部和底部。
查看结果:
答案 2 :(得分:14)
使用storyboard&amp;自动布局非常简单:我想你需要垂直分割屏幕(但水平方向是同样的技巧)。
因此,使用单个视图控制器,拖放两个视图并将它们设置为顶部和底部。对于视图1 :
查看2 :
现在您需要为主视图中的视图1设置约束相等高度,并为视图2设置相同。之后,您可以编辑这些约束设置的值(0到1之间) )作为乘数。双击约束:
并设置你想要的比例值(它将这些约束的总和保持为1或者只是在这里放入“2:3”和在另一个视图中放入“1:3”):
所以这就是结果:
我希望这是你需要的,告诉我你是否需要更多细节!
答案 3 :(得分:1)
您可以在接受的答案中使用Equal Widths
约束,但是,如果您尝试约束的不是两个尺寸,而是一个指向另一个,例如约束一个视图的horizontal center
到屏幕上的1/3或2/3点,然后它将无法工作,因为你无法将空间中的一个点约束到一个大小。
但如果您知道,view1
,xib
中的horizontal center
将是屏幕的整个宽度,那么,例如trailing
点,您可以约束它到该视图的1:3
边缘,如果您希望视图以屏幕宽度的1/3或2/3为中心,则将乘数分别设置为2:3
或public class MyServiceLogHandler implements SOAPHandler<SOAPMessageContext> {
Logger handlerLog = LogManager.getLogger(MyServiceLogHandler.class);
public boolean handleMessage(SOAPMessageContext context) {
SOAPMessage message= context.getMessage();
boolean isOutboundMessage= (Boolean)context.get (MessageContext.MESSAGE_OUTBOUND_PROPERTY);
if(isOutboundMessage){
handlerLog.debug("OUTBOUND MESSAGE\n");
}else{
handlerLog.debug("INBOUND MESSAGE\n");
}
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
message.writeTo(baos);
handlerLog.debug(" " + baos.toString());
baos.close();
return true;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean handleFault(SOAPMessageContext context) {
SOAPMessage message= context.getMessage();
try {
message.writeTo(System.out);
} catch (SOAPException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public void close(MessageContext context) {
// TODO Auto-generated method stub
}
public Set<QName> getHeaders() {
// TODO Auto-generated method stub
return null;
}
}
。 / p>