我正在使用Appcelerator Titanium并想制作Android应用程序。我创建了一个4行的TableView。我想将3个标签放入每一行,我希望我的标签均匀分布。 (第一个标签必须在左侧,第二个在中心,第三个在该行的右侧) 谢谢。如何在一行中按宽度均匀分布组件?
回答
试试这段代码。
var win = Ti.UI.createWindow({
});
var table = Ti.UI.createTableView({
backgroundColor:'blue',
top:50,
height : 160
});
win.add(table);
var data = [];
for (var i = 0; i < 4; i++) {
var row = Ti.UI.createTableViewRow({
height : 40
});
var label1 = Ti.UI.createLabel({
text : 'label1',
top : 5,
left : 10,
width : 80,
height : 30
});
row.add(label1);
var label2 = Ti.UI.createLabel({
text : 'label2',
top : 5,
left : 130,
width : 80,
height : 30
});
row.add(label2);
var label3 = Ti.UI.createLabel({
text : 'label3',
top : 0,
left : 240,
width : 80,
height : 30
});
row.add(label3);
data.push(row);
}
table.data = data;
win.open();
最好的运气..
是否有某种自动放置组件的父对象,可能是布局或类似的东西?因为如果我为smartphon设计我的应用程序,对象的位置可能是正确的,但如果我尝试在Galaxy Tab或其他具有更高分辨率的其他位置上使用此应用程序,会发生什么情况。在这种情况下,放置将是不正确的。 – Alex
是亚历克斯为你可以使用%或dp –
嗨亚历克斯..是任何回答有用你从这些3回答??如果是,那么你可以把ans标记为正确,以便其他人可以从你的que中得到参考......谢谢! –
左,中,右,你可以使用相对定位和文本对齐方式非常简单地让你的行。无论当前屏幕有多宽(即,这适用于平板电脑,手机,电视等),此方法都可以正常工作。
var win = Ti.UI.createWindow({
backgroundColor: '#fff'
});
var rows = [];
for (var i = 0; i < 10; i++) {
var row = Ti.UI.createTableViewRow();
row.add(Ti.UI.createLabel({
text: 'Left ' + i, textAlign: 'left',
color: '#000',
left: 10
}));
row.add(Ti.UI.createLabel({
text: 'Center ' + i, textAlign: 'center',
color: '#000'
}));
row.add(Ti.UI.createLabel({
text: 'Right ' + i, textAlign: 'right',
color: '#000',
right: 10
}));
rows.push(row);
}
win.add(Ti.UI.createTableView({
data: rows
}));
win.open();
另一种选择是使用百分比宽度,如left: '0%', width: '33%'
,然后left: '33%', width: '33%'
等
或者你可以说第一个标签为left: 0, width: 200
。第二个是left: 200, width: 50
,第三个是left: 250, right: 0
。那会给你第三个有弹性的标签,因此它可以占据空间。
另一个选择(我不建议你采取)将使用Ti.Platform.displayCaps.platformWidth
并根据它来定位行元素。但这对于方向变化将非常脆弱。
这一切都取决于你的内容。有了这些,你应该能够处理你的特定用例。
这是我最近如何解决这个问题。每行内有3个独立的视图和标签。这对我来说非常好!所有这些都基于百分比,所以它应该适用于所有决议。祝你好运!
for (var i = 0; i < 4; i++) {
var row = Ti.UI.createTableViewRow({
height: 'auto',
});
var view1 = Ti.UI.createView({
left : 0,
width : "33.33%",
backgroundColor:'red',
height:40
});
var label1 = Ti.UI.createLabel({
text: 'here',
color:"#fff",
textAlign: Ti.UI.TEXT_ALIGNMENT_LEFT
});
view1.add(label1);
var view2 = Ti.UI.createView({
left : "33.33%",
width : "33.33%",
backgroundColor : "white",
height:40
});
var label2 = Ti.UI.createLabel({
text: 'there',
color:"#fff"
});
view2.add(label2);
var view3 = Ti.UI.createView({
left : "66.66%",
width : "33.33%",
backgroundColor: "blue",
height:40
});
var label3 = Ti.UI.createLabel({
text: 'Everywhere',
color:"#fff"
});
view3.add(label3);
row.add(view1);
row.add(view2);
row.add(view3);
}
- 1. 均匀分布在整个宽度
- 2. Android ConstraintLayout:三个按钮在宽度上均匀分布
- 3. 如何在div上均匀分布一组跨度?
- 4. 最大宽度和最小宽度均匀分布的DIV
- 5. 沿着屏幕宽度均匀分布的按钮
- 6. 在Xcode中均匀分布按钮
- 7. 需要均匀分布的按钮行
- 8. 如何在CSS中均匀分布?
- 9. 按天分配行均匀
- 10. PRNG均匀分布
- 11. 是否可以在整个宽度上均匀分布按钮RELATIVE LAYOUT
- 12. 在表格布局的高度上均匀分布行
- 13. 拆分数组均匀分布的块
- 14. 在Android中嵌套线性布局以均匀分享高度和宽度
- 15. 文本不换的均匀分布,甚至宽度Flexbox的
- 16. 不同宽度的均匀分布的图像?
- 17. 将非均匀分布转化为均匀分布
- 18. 如何在jqplot中均匀分布x和y轴分布?
- 19. 如何确保按CSS颠倒的按钮均匀分布?
- 20. 非均匀分布的随机数组
- 21. 在容器的整个高度和宽度上均匀分布DIV儿童
- 22. 如何在一个div中均匀分布元素?
- 23. 如何设置窗口编辑器选项卡的宽度以均匀分布?
- 24. 如何分割图像的高度和宽度均匀4X4 = 16件?
- 25. 在ggplot2中水平均匀分布点
- 26. Powerpoint VBA - 均匀分布列
- 27. 随机均匀分布
- 28. 均匀分布矩形
- 29. Python适合均匀分布
- 30. 均匀分布差异
如果可能的话,请接受这是最有利于你答案。 –