1

QML-我有一个由触摸、键导航或侧向上/向下导航按钮控制的 ListView。ListView 用于程序的不同部分,并且列表中的项目数量总是不同的。当使用键导航(keyPressLeft)从侧面导航到ListView时,我想将焦点设置在ListView当前页面的中间。我们现在使用的代码适用于每页有 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