2017-12-27 2 views
0

QML의 TabView에서 탭 사이를 이동할 때 전환을 구현하는 방법을 찾으려고하는데, 찾을 수 없지만이를 수행 할 수있는 방법이 있습니까?어떻게 탭뷰에서 탭을 바꿀 때 전환을 구현할 수 있습니까?

내 코드는 다음과 같습니다

TabView{ 
    id : tbView 
    height: parent.height 
    width: parent.width 


    Tab{ 
     HomePage{ 
      id: home 
      height: tbView.height 
      width: tbView.width 
      onBtnConfigClicked: btnPlay() 
     } 
    } 
    Tab{ 
     Rectangle{ 
      anchors.fill: parent 
      color: "blue" 
     } 
    } 
} 



function btnPlay() 
{ 
    tbView.currentIndex = 1 
} 

홈페이지 요소는 신호 btnConfigClick을 가지고, 그럼 내가 함수 btnPlay, 그 기능 변경 currentIndex 속성을 1로, 첫 번째 탭이 0에 부착, 나는 싶습니다 currentIndex를 변경할 때 슬라이드 전환.

+0

구현하려고하면 코드를 보여줍니다. – eyllanesc

+0

@eyllanesc 나는 이미 내 코드를 수정 했으므로 QML의 새로운 코드이므로 접근법이 정확하지 않으면 지금하지 마라. –

+0

우리는 실수로부터 배워야한다. 시도한 코드, 연구해야 할 연구 결과 등등. – eyllanesc

답변

0

글쎄, 당신은 SwipeView와 함께 TabBar compontent를 사용할 수 있습니다

documentation에서 :

TabBar { 
    id: bar 
    width: parent.width 
    TabButton { 
     text: qsTr("Home") 
    } 
    TabButton { 
     text: qsTr("Discover") 
    } 
    TabButton { 
     text: qsTr("Activity") 
    } 
} 

SwipeView { 
    width: parent.width 
    currentIndex: bar.currentIndex 
    Item { 
     id: homeTab 
    } 
    Item { 
     id: discoverTab 
    } 
    Item { 
     id: activityTab 
    } 
} 

그래서 자동으로 항목을 대응에 SwipeView 전환을 수행합니다 TabBarcurrentIndex 속성을 변경.

귀하의 질문이 저에게 명확하지 않기 때문에, 귀하가 달성하기를 원하는 것인지 여부는 확실하지 않습니다.

+0

감사합니다. 답을 너무 많이 고맙게 생각합니다. 정말 도움이되었습니다. 사용자가 전환과 직접 상호 작용할 수있는 대신 재생 기능을 통해 전환해야하므로 'SwipeView'구성 요소에 'interactive : false'를 할당하고 해결합니다. 그러나 다른 한편으로는 표시하지 않습니다. TabBar 구성 요소는 모든 논리가 버튼을 통해 표시됩니다. 감사 –

관련 문제