2016-12-11 7 views
2

У меня есть ListView с поворотом -90 градусов, с его повернутым на 90 градусов ListItem в сплавленном титане.Получите bindId из добавленных данных в TableView внутри ListView (титан/сплав)

В каждом элементе ListItem есть заголовок и содержимое TableView, а данные TableView являются динамическими.

Это мой index.xml:

<Alloy> 
    <Window> 
     <ListView id="view" defaultItemTemplate="item"> 
      <Templates> 
       <ItemTemplate id="item" name="item"> 
        <View id="view" bindId="view"> 
         <View class="header"> 
          <Label class="title" bindId="title"/> 
          <Label class="subtitle" bindId="subtitle"/> 
          <Label class="desc" bindId="desc"/> 
          <View class="border"/> 
         </View> 
         <TableView class="content" bindId="content"/> 
        </View> 
       </ItemTemplate> 
      </Templates> 
      <ListSection/> 
     </ListView> 
    </Window> 
</Alloy> 

Я устанавливаю каждый данные Tableview так:

var items = []; 

items.push({ 
    properties: { 
     backgroundColor: "#fff", 
     width: config.height, 
     height: config.row 
    }, 
    title: { 
     text: "title" 
    }, 
    content: { 
     data: rows //TableViewRow's array 
    } 
}); 

$.view.sections[0].setItems(items); 

Проблема заключается в том, когда я хочу, чтобы получить идентификатор щелкнули строки.

Это мой itemclick событие (индекс пункт и данные TableView):

$.view.addEventListener("itemclick", function(e) { 

    console.log("clicked on item: " + e.itemIndex); 

    var item = $.view.sections[0].getItemAt(e.itemIndex); 

    _.map(item.content.data || [], function(row) { 

     console.log(row); 

     row = null; 
    }); 
}); 

Существует ли способ, чтобы получить индекс щелкнули строки?

Я пытался добавить, что то же событие для всех этих свойств объекта, но до сих пор не повезло:

item.click 
item.onclick 
item.properties.click 
item.properties.onclick 
item.content.click 
item.content.onclick 
item.content.properties.click 
item.content.properties.onclick 
item.events.click 
item.events.onclick 
item.properties.events.click 
item.properties.events.onclick 
item.content.events.click 
item.content.events.onclick 
item.content.properties.events.click 
item.content.properties.events.onclick 

Я также пробовал добавить слушатель событий для всех строк

enter image description here

+0

В качестве обходного пути, я заменил TableView с ScrollView, с 30 внутренними Views, каждая из этих точек зрения имеет в качестве bindId как данные [ «вид» + индекс] и все метки помещаются в данные ["view" + index] childrens array –

ответ

0

Вы можете установить

Itemid

для этого

+0

спасибо, но где я устанавливаю itemId? –

+0

Я добавил itemId и bindId в таблицу «t1» к каждой строке «t1_r1» и ко всем ее меткам «t1_r1_l1». Но ничего не изменилось –