2015-02-11 16 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()