2015-02-11 15 views
0

我是新钛合金。你可以请建议我在钛编辑android listview。 列表项从服务器数据库获取。我想编辑任何行并更新到数据库表。我已经从数据库中获取数据/列表项并在tab1中的选项卡组上显示为列表视图。现在我想编辑任何列表项并更新到数据库。例如,从列表中编辑任何名称并更新到数据库。如何编辑钛的Android列表视图

var tabGroup = Titanium.UI.createTabGroup(); 

var win1 = Titanium.UI.createWindow({ 
}); 

var tab1 = Titanium.UI.createTab({ 
    icon:'KS_nav_views.png', 
    title:'List', 
    window:win1 
}); 

var scrollView = Ti.UI.createScrollView({ 
    contentWidth: 'auto', 
    contentHeight: 'auto', 
    scrollType: 'horizontal', 
    height: 'auto', 
    width: 'auto' 
}); 

var section = Ti.UI.createListSection(); 
var listView = Ti.UI.createListView 
({ 
    sections: [ section ], 
    searchView: search, 
    editing: true, 
    caseInsensitiveSearch: true, 
    pruneSectionsOnEdit : true, 
    width:'100%' 

}); 

     var ajax = Ti.Network.createHTTPClient(); 
     ajax.onerror = function(e){ 
      alert('Error'); 
     }; 
     ajax.onload = function(){ 
      Titanium.API.info(this.responseText); 
      var data = this.responseText; 
      var jdata = JSON.parse(data); 

      if(jdata.success){ 
       rows=jdata.data; 
       var dataArr = []; 
       for(i=0; i< rows.length; i++){ 
        dataArr[i]={ properties: { title: rows[i].name, canEdit: true, canMove: true}}; 
       } 

       console.log(dataArr); 
       section.setItems(dataArr); 

      } 
      else{ 
       alert(jdata.msg); 
      } 

     }; 
     ajax.open('POST', 'http://www.examples.com/get-users.php'); 

scrollView.add(listView); 
win1.add(scrollView); 
abGroup.addTab(tab1); 
+0

您需要提供更多关于您尝试过的内容以及您希望实现的内容,以便我们能够提供更好的帮助。 – 2015-02-11 18:56:59

+0

我已经从数据库中获取数据/列表项,并在tab1中的选项卡组上显示为列表视图。现在我想编辑任何列表项并更新到数据库。例如,从列表中编辑任何名称并更新到数据库。 – shoyeb 2015-02-11 19:22:34

回答

0

一旦你填入你的列表中,如果要更新某行,你应该:

  • 从部分
  • 更新项目
  • 更新的领域获得该项目部分

这是部分代码:

var item = section.getItemAt(index) //You should know the position 
            // do a check loop or save a hashmap 
item["title"]["text"] = "new title" 
section.updateItemAt(index, item) 

//Extract the model now, update and save 
var model = getModel() //TODO this function 
model.set({"title": "new title"}) 
model.save()