2014-07-19 2 views
0

enter image description here센차 터치 연속의 ListView는

이미지는 위의 내 센차 터치 응용 프로그램의 현재 구조를 보여줍니다 발행 버튼을 두 번 다시. 내 세부 정보 페이지는 2 개의 뒤로 단추로 끝납니다. 사용자가 2 개의 목록보기를 거쳐 세부 정보보기로 이동하기 때문입니다.

나는 공석 목록으로 돌아가는 세부 사항보기에 하나의 뒤로 버튼을 넣을 해결책을 찾고 있습니다. 그리고 공석 명부에는 단면도 명부 등을 맞댄가는 그것의 자신의 뒤 단추가있을 것이다.

답변

2

Ext.navigation.View를 사용하십시오. 모든 뷰 전환을 처리하고 뒤로 버튼을 만듭니다. 목록을 밀어 넣기 만하면됩니다.

Ext.create("Controller", { 
    extend: "Ext.app.Controller", 

    refs: { 
     navigationView: "navigationview", 
     sectionList: "list[itemId='sectionlist']", 
     vacancyList: "list[itemId='vacancylist']" 
    }, 
    control: { 
     sectionList: { 
      sectionSelected: "handleSectionSelection" 
     }, 
     vacancyList: { 
      vacancySelected: "handleVacancySelection" 
     } 
    }, 

    handleSectionTap: function() { 
     var sectionList = Ext.create("Ext.List", { 
      itemId: "sectionlist", 
      store: "sectionStore", 
      itemTpl: "{name}", 
      onItemDisclosure: function (list, record) { 
       this.fireEvent("sectionSelected", record); 
      } 
     }); 

     var navigationView = this.getNavigationView(); 
     navigationView.push(sectionList); 
    }, 

    handleSectionSelection: function (record) { 
     var vacancyList = Ext.create("Ext.List", { 
      itemId: "vacancylist", 
      store: record.get("storeId"), 
      itemTpl: "{name}", 
      onItemDisclosure: function (list, record) { 
       this.fireEvent("vacancySelected", record); 
      } 
     }); 
    }, 

    handleVacancySelection: function (record) { 
     var detailView = Ext.create("DetailView"); 
     detailView.setRecord(record); 
     var navigationView = this.getNavigationView(); 
     navigationView.push(detailView); 
    } 
}); 

선택 목록의 공개 버튼을 탭하면 새로운 대기실 목록이 탐색보기로 푸시됩니다. 네비게이션 뷰 스택에는 두 가지 뷰가 있으므로, 하나의 팝을 빈자리 목록으로 가져와 선택 목록으로 돌아 가게하는 뒤로 버튼을 만듭니다.

공석 목록 공개 버튼을 누를 때 동일한 절차가 수행됩니다.

이 코드는 사용자가 이미 어딘가에 탐색보기를 만들었으며 선택 레코드에 공실 저장소의 ID가 있음을 전제로합니다.