我在使TableView中的标签正确显示时遇到问题,我希望有人可以提供帮助。
以下是问题的屏幕截图:
它们后面带有(...)的标签被切掉了。 当我为行设置固定高度时不会出现此问题,但由于文本长度不同,这对我来说不是一个好的解决方案。
我在this question尝试了答案,但无济于事。
以下是我生成表格的代码:
var aSection = Ti.UI.createTableViewSection({
rows: [],
headerView: header
});
for (var p = 0; p < answers.length; p++){
var currentAnswer = answers[p];
var arow = Ti.UI.createTableViewRow({
selectedBackgroundColor:'#f5f5f5',
answID: currentAnswer['aId'],
map: currentAnswer['aMap'],
isSelected: false,
height: 'auto',
rightImage: '/images/icons/radio-unselected.png'
});
var atext = Ti.UI.createLabel({
font:{fontSize:gui.defaultFontSize+2, fontFamily: gui.defaultFont},
color: '#333',
text: currentAnswer['aText'],
left:10, top: 10, bottom: 10, right: 10,
width:'auto',
height: 'auto',
borderWidth: 0,
borderColor: "#000",
});
arow.add(atext);
aSection.add(arow);
}
var sections = [];
sections[0] = aSection;
var answView = Ti.UI.createTableView({
backgroundColor:'white',
data: sections,
bottom: 1,
minRowHeight: 40,
});
我真的很茫然。任何指针都表示赞赏。
答案 0 :(得分:2)
如果你的文字太长,那么它与右侧按钮重叠,但你仍然要显示全文,那么你应该设置左和右;右边或设置宽度为Ti.UI.SIZE所以如果你想重叠右边的按钮然后你应该使用Ti.UI.SIZE或不然后你可以设置左和右对了
简而言之,将宽度设置为Ti.UI.SIZE或设置左右属性。
答案 1 :(得分:1)
对Ti.UI.SIZE
和height
而不是width
使用auto
,很久以前就已弃用auto
。这样的事情可以帮到你
var aSection = Ti.UI.createTableViewSection({
rows: [],
headerView: header
});
for (var p = 0; p < answers.length; p++){
var currentAnswer = answers[p];
var arow = Ti.UI.createTableViewRow({
selectedBackgroundColor:'#f5f5f5',
answID: currentAnswer['aId'],
map: currentAnswer['aMap'],
isSelected: false,
height:Ti.UI.SIZE,
rightImage: '/images/icons/radio-unselected.png'
});
var atext = Ti.UI.createLabel({
font:{fontSize:gui.defaultFontSize+2, fontFamily: gui.defaultFont},
color: '#333',
text: currentAnswer['aText'],
left:10, right: 10,
width:Ti.UI.SIZE,
height:Ti.UI.SIZE,
borderWidth: 0,
borderColor: "#000",
});
arow.add(atext);
aSection.add(arow);
}
var sections = [];
sections[0] = aSection;
var answView = Ti.UI.createTableView({
backgroundColor:'white',
data: sections,
bottom: 1,
minRowHeight: 40,
});
答案 2 :(得分:0)
尝试使用:minimumFontSize:'18sp'
或某种尺寸,以满足您的显示需求。这会将字体缩小到最小尺寸以适应所有内容。