2014-02-10 4 views
1

내 Blackberry 10 응용 프로그램의 경우 탭 패널을 탐색 창에 연결합니다. 그러나 사용자가 목록에서 항목을 선택하면 어떻게 할 수 있습니까? 항목의 소스가 XML 파일을 기반으로하는 목록보기를 만들었지 만, ListView에 대한 onTriggered 이벤트 내에서 변경해야 할 항목이 무엇인지 알고 싶습니다. 그 이유는이 항목이 그 작업과 관련이 있다고 생각하기 때문입니다. 페이지.탐색 창에 탭 패널 추가 - BlackBerry 10

QML

import bb.cascades 1.2 

    Page { 
     id: waterlooandcity 
     Container { 
      ListView { 
       dataModel: XmlDataModel {source: "asset:///models/WC.xml"} 
        listItemComponents: [ 
         ListItemComponent { 
         type: "item" 
         content: Container { 
          StandardListItem { 
           title: ListItemData.title 
           description: ListItemData.zone 
          } 
         } 
        } 
       ] 
       onTriggered: { 
        var chosenItem = dataModel.data(indexPath); 
        Qt.pageTitle = chosenItem.title; 

        chosenPage.source = chosenItem.file; 
        nav.push(chosenPage.createObject()); 
       } 
      } 
     } 
    } 

XML

<root> 
    <item title="Bank" zone="Fare zone 1" file="Bank_(WC).qml"/> 
    <item title="Waterloo" zone="Fare zone 1" file="WAT_(WC).qml"/> 
</root> 

답변

1

의 TabbedPane은 NavigationPane 또는 페이지 내부에 배치 할 수 없습니다. 일반적으로 앱의 루트라고 가정합니다.

TabbedPane이 포함 된 시트를 열면됩니다.

attachedObjects: [ 
    Sheet { 
     id: tabSheet 
     property variant source 
     TabbedPane { 
      //insert tabs here 
     } 
    }   
] 

는 그런 다음과 같이 그것으로 매개 변수를 시트를 열고 전달할 수 있습니다 : 같은

뭔가

onTriggered: { 
    var chosenItem = dataModel.data(indexPath); 
    Qt.pageTitle = chosenItem.title; 

    tabSheet.source = chosenItem.file; 
    tabSheet.open(); 
} 

나는이 테스트 havn't는 있지만 작동합니다.

+0

작동하지만 Peek를 사용하여 이전 페이지로 되돌아 가게하지 않습니다. 또한 필요한 내용이 나타나지 않습니다. – MacaronLover

+1

원하는 픽 동작을 수행 할 수 없습니다. 탭이있는 창은 아래에서 엿보기를 허용하지 않기 때문입니다 (엿보기 동작은 전체 탭 목록을 보는 데 사용됩니다). 이는 탐색 창 안에 탭 패널을 배치 할 수없는 이유 중 일부입니다. 탭이있는 분할 창을 분할 된 컨트롤로 바꾸는 것이 좋습니다. 그러면 탐색 창에서 페이지를 넘길 수 있습니다. http://developer.blackberry.com/native/documentation/cascades/ui/core_controls/segmented_control.html –