Css TableView单元格使用全屏幕高度
我通读了本教程,并试图创建自己的简单应用程序,以便与运行一些Spring代码的Jetty服务器进行交互。我基本上调用一个get http请求,该请求以JSON格式为我提供一组联系人。然后,我用JSON数据填充几行,并尝试构建一个TableView 但是,所有这些都有效,我的tableView行占据了整个屏幕。每行是一个屏幕。我可以上下滚动查看我的所有数据,但我正试图找出我的样式中的错误,这使得单元格使用整个屏幕。我的CSS不是很好,所以非常感谢您的帮助。谢谢 下面是加载tableView的js文件:Css TableView单元格使用全屏幕高度,css,uitableview,appcelerator,Css,Uitableview,Appcelerator,我通读了本教程,并试图创建自己的简单应用程序,以便与运行一些Spring代码的Jetty服务器进行交互。我基本上调用一个get http请求,该请求以JSON格式为我提供一组联系人。然后,我用JSON数据填充几行,并尝试构建一个TableView 但是,所有这些都有效,我的tableView行占据了整个屏幕。每行是一个屏幕。我可以上下滚动查看我的所有数据,但我正试图找出我的样式中的错误,这使得单元格使用整个屏幕。我的CSS不是很好,所以非常感谢您的帮助。谢谢 下面是加载tableView的js文
// create variable "win" to refer to current window
var win = Titanium.UI.currentWindow;
// Function loadContacts()
function loadContacts() {
// empty array "rowData" for table view cells
var rowData = [];
// create http client
var loader = Titanium.Network.createHTTPClient();
// set http request method and url
loader.setRequestHeader("Accept", "application/json");
loader.open("GET", "http://localhost:8080/contactsample/contacts");
// run the function when the data is ready for us to process
loader.onload = function(){
Ti.API.debug("JSON Data: " + this.responseText);
// evaluate json
var contacts = JSON.parse(this.responseText);
for(var i=0; i < contacts.length; i++) {
var id = contacts[i].id;
Ti.API.info("JSON Data, Row[" + i + "], ID: " + contacts[i].id);
var name = contacts[i].name;
Ti.API.info("JSON Data, Row[" + i + "], Name: " + contacts[i].name);
var phone = contacts[i].phone;
Ti.API.info("JSON Data, Row[" + i + "], Phone: " + contacts[i].phone);
var address = contacts[i].address;
Ti.API.info("JSON Data, Row[" + i + "], Address: " + contacts[i].address);
// create row
var row = Titanium.UI.createTableViewRow({ height:'auto' });
// create row's view
var contactView = Titanium.UI.createView({ height:'auto', layout:'vertical', top:5, right:5, bottom:5, left:5 });
var nameLbl = Titanium.UI.createLabel({
text:name,
left:5,
height:24,
width:236,
textAlign:'left',
color:'#444444',
font:{
fontFamily:'Trebuchet MS', fontSize:16, fontWeight:'bold'
}
});
var phoneLbl = Titanium.UI.createLabel({
text: phone,
top:0,
bottom:2,
height:'auto',
width:236,
textAlign:'right',
font:{ fontSize:14}
});
var addressLbl = Titanium.UI.createLabel({
text: address,
top:0,
bottom:2,
height:'auto',
width:236,
textAlign:'right',
font:{ fontSize:14}
});
contactView.add(nameLbl);
contactView.add(phoneLbl);
contactView.add(addressLbl);
row.add(contactView);
row.className = "item" + i;
rowData.push(row);
}
Ti.API.info("RowData: " + rowData);
// create table view
var tableView = Titanium.UI.createTableView( { data: rowData });
win.add(tableView);
};
// send request
loader.send();
}
// get contacts
loadContacts();
//创建变量“win”以引用当前窗口
var win=tianium.UI.currentWindow;
//函数loadContacts()
函数loadContacts(){
//表视图单元格的空数组“rowData”
var rowData=[];
//创建http客户端
var loader=Titanium.Network.createHTTPClient();
//设置http请求方法和url
setRequestHeader(“接受”、“应用程序/json”);
loader.open(“GET”http://localhost:8080/contactsample/contacts");
//当数据准备好供我们处理时运行该函数
loader.onload=函数(){
debug(“JSON数据:“+this.responseText”);
//计算json
var contacts=JSON.parse(this.responseText);
对于(变量i=0;i
这里有一些屏幕显示了我的问题。我试着用上、下、右、左像素玩了一点,但似乎什么都没有得到。非常感谢您的帮助。谢谢
因为我在这里没有收到回复,所以我在Tianium Appcelerator问答网站上发布了相同的问题。看来我用来学习钛的教程已经过时了。
auto
标签已被弃用,现在建议使用Tianium API中包含的常量。非常感谢你的回答
解决我问题的答案是:
auto
是不推荐使用的装置。而是使用填充
或大小
在您的情况下,创建contactView时,将其高度设置为
Ti.UI.SIZE
。因此视图应调整自身大小以适合其
内容