2011-09-24 3 views
0

나는 TableView를 가지고 있지만 다양한 이유로 스 와이프 - 삭제 기능을 내장하고 싶지 않습니다. 그래서 그 행에 포함 된 행을 삭제해야하는 버튼이 있습니다. 내가 어떻게 그럴 수 있니? TableView 객체에는 deleteRow() 함수가 있지만 삭제할 행의 인덱스가 필요하며, 알다시피 TableViewRow 객체에서 그 인덱스를 가져 오는 방법은 없습니다. 당신은 전체 행에 이벤트 리스너를 넣을 수있는 버튼티타늄 모바일에서 TableViewRow 삭제

을 만들 때

답변

2

버튼의 속성으로 행 인덱스를 설정할 수 있습니다, 소스 오브젝트 버튼 때 감지하고 당신이있을 것 색인 및 삭제를위한 버튼 클릭 이벤트.

여러 방법이 있습니다, 일부 코드는 제가 버튼에서 행을 액세스 할 수있는 최적의 솔루션

+0

로 안내하는 데 도움이 것, 난 그냥 사용자 정의 ._parent 속성을 설정합니다. 그러나 TableViewRow.index가 없거나 거기에 뭔가가 있습니까? 인덱스를 속성으로 설정하는 문제는 행을 다시 그리거나 삭제할 때 인덱스가 변경된다는 것입니다. – penguinrob

+1

전체 테이블에서 click 이벤트를 나열 할 수 있으므로 행당 하나의 리스너가 필요하지 않습니다. Aaron의 접근 방식을 취해 소스가 버튼 중 하나인지 확인하십시오 (힌트 : 소스의 제목이나 삭제 버튼의 다른 식별 속성을 기반으로 검색 할 수 있음). 그런 다음 이벤트의 "index"속성을 사용하여 어떤 행이 적용되었는지 결정합니다. 예를 들어 : table.addEventListener ('클릭'기능 (EVT) { Ti.UI.createAlertDialog ({ 제목 : + evt.index, 메시지 : '인덱스를 클릭 한': '당신은 행에 클릭! ' }). show(); }); –

+0

고마워, 그거 생각 해본 적 없지만 – penguinrob