2011-03-17 3 views
1

Sencha Touch의 JSON 데이터에서 생성 된 목록이 있습니다. 기본적으로이 목록은 데이터 저장소 개체에서 생성되며 연락처 목록의 역할을합니다. 사용자가 목록 항목 중 하나를 두드리면 Sencha Touch에 Action Sheet가 표시되어 많은 작업 (예 : '전화', '메시지 보내기'및 '삭제'등)을 추가하는 기능을 추가하고 싶습니다. ').목록 항목이 탭되었을 때 Sencha Touch에서 액션 시트 만들기

는 여기에리스트 뷰를 생성하는 데 사용하고 코드입니다 :

var listView = new Ext.List({ 
    store: friendStore, 
    itemTpl: '{forename} {surname}<br />{phoneNumber}', 
    grouped: true, 
    indexBar: true 
}); 

나는 아마도 on 매개 변수를 사용할 수 있다는 것을 알고 있지만, 오히려 각 항목보다 목록에 tap 이벤트를 추가합니다. 뿐만 아니라 tel:// 일부 링크가 포함됩니다 표시된 액션 시트는 그래서 전화 전화 번호도 의미가 키 {phoneNumber}

희망에 따라 데이터 저장소에 저장되어 있기 때문에 (물론 동적 할 필요가 ...

답변

1

ListView에는 들어야하는 itemtap 이벤트가 있습니다. 워드 프로세서 :.

itemtap : (Ext.DataView view, Number index, Ext.Element item, Ext.EventObject e) 

이 탭 항목 만 view.getStore() getAt을 (인덱스)에 해당하는 기록을 얻을 수 있습니다. 그런 다음 이벤트 처리기에서 레코드의 데이터를 기반으로 ActionSheet를 다시 작성하고 표시하십시오.

또한 수신기에 목록을 연결하는 것이 각 개별 항목에 연결하는 것보다 더 효율적입니다.

+0

도움을 주셔서 감사합니다. 제이슨! – BenM

0

이 좋은 답변을하지 않습니다하지만 난 목록의 부모 인 DataView, 볼 것입니다.

그것은 당신이 목록의 하위 섹션을 지정하는 데 사용할 수 있습니다 itemSelector라는 속성이 있습니다

itemSelector를 사용하는 경우 tpl 속성도 제공해야합니다.

관련 문제