Я использую вид сетки, который можно прокручивать слева направо. Когда вы нажимаете на каждый элемент в виде сетки, новый экран запускается с анимацией из текущего положения позиции сетки до ширины экрана и высоты экрана. Когда вы нажимаете на элементы второго столбца после прокрутки сетки вправо, позиция элемента сетки становится неправильной. Есть ли способ исправить это? Или есть ли способ проверить, прокручивается ли сетка в крайнем правом углу?Как узнать, прокручивается ли сетка до конца
кладу мой код ниже:
GridView {
id: featuresGrid
snapMode: ListView.SnapToItem
clip:true
x: 135
y: 122
width:1650
height:485
cellWidth: 825
cellHeight: 160
flow: GridView.FlowTopToBottom
model:favouriteapp
delegate:featureGridTile
focus: false
}
ListModel {
id:favouriteapp
ListElement {
featureName: "media & radio"
}
ListElement {
featureName: "phone"
}
ListElement {
featureName: "climate"
}
ListElement {
featureName: "navigation"
}
ListElement {
featureName: "ambient lighting"
}
ListElement {
featureName: "settings"
}
ListElement {
featureName: "camera"
}
ListElement {
featureName: "dynamic-i"
}
ListElement {
featureName: "bluetooth"
}
}
Component {
id: featureGridTile
Item {
id:grid_view_rect
width:featuresGrid.cellWidth
height:featuresGrid.cellHeight
Text{
anchors.fill: parent
text : featureName
opacity: 1
}
MouseArea{
anchors.fill: parent
onClicked: {
featuresGrid.currentIndex = index
//Goes to the next screen with the current clicked grid item X and Y position
}
}
}
}
Можете ли вы привести пример, который содержит полный набор стандартов mcve? http://stackoverflow.com/help/mcve Нет ссылок на неизвестные 'downscaleFactors',' utilObj' или 'featureGridTiles'. Я хочу запустить ваш код, увидеть вашу проблему и предоставить исправление, если можно. Но я не хочу неустанно работать, чтобы запустить пример. – derM
Я обновил код. –
ОК, я запустил его сейчас. Тем не менее, я не понимаю, что должно произойти, как только я нажал на элемент. Должна появиться новая вещь, как плитка, на которую вы нажимали, расширяется? И вы не можете найти позицию сперва, чтобы начать? – derM