1

QML-タッチ、キーナビゲーション、またはサイドアップ/ダウンナビゲーションボタンのいずれかで制御されるListViewがあります。ListView はプログラムのさまざまな部分で使用され、常にリスト内の項目数が異なります。キー ナビゲーション (keyPressLeft) を使用してサイド ナビゲーションから ListView に移動するときに、ListView の現在のページの中央にフォーカスを設定したいと考えています。現在使用しているコードは、1 ページあたり 5 項目のリストで機能しますが、より動的にする必要があります。現在使用しているコードは次のとおりです。

Keys.onLeftPressed: {        
     var first = menu.indexAt(0, menu.contentY+5)        
     var mid        
     if (first == menu.count-1) { 
     mid = first         
     } else if (first ==menu.count-2) {             
     mid = first+1         
     } else {
     mid = first+2         
}          
menu.currentIndex= mid //menu.indexAt(0, menu.contentY+5) + 2
keyPressLeft.currentItem.forceActiveFocus()     
}  
4

0 に答える 0