Только одна строка ListView заполнена в приложении QML, есть идеи, почему? - PullRequest
3 голосов
/ 24 августа 2010

Я пытаюсь создать простое приложение QML, которое получит RSS-ленту с моими активными шахматными играми и поработает с ней. На данный момент я просто пытаюсь заполнить представление списка содержимым канала, но в нем отображается только один элемент, даже если в канале должно быть 11 элементов. Это ошибка или я что-то не так понимаю?

Вот код:


    import Qt 4.7
    import "content"

    Rectangle {
        id : window;
        width : 320
        height : 480

        XmlListModel {
            id : xmlModel

            source : "http://gameknot.com/rss.pl?n=kEzvYvEgfHoOmzQzQlY/5w5ITO5YDN"
            query : "/rss/channel/item"

            XmlRole { name: "title"; query: "title/string()"}
            XmlRole { name: "description"; query: "description/string()"}
        }

        Column
        {
            id : mainContainer

                ListView
                {

                    id : list
                    model : xmlModel
                    delegate : ListDelegate { }
                    //delegate: Text { text: title }
                }
        }
    }

С делегатом все должно быть в порядке, потому что то же самое происходит и с простым делегатом, которого я закомментировал.

1 Ответ

7 голосов
/ 26 августа 2010

Ваша модель и вид в порядке, это ваш макет, который не так.Попробуйте добавить anchors.fill: parent в mainContainer.Это должно исправить это:

Column
{
    anchors.fill: parent
    id : mainContainer

    ListView
    {
        width: parent.width
        height: parent.height

        id : list
        model : xmlModel
        delegate : ListDelegate { }
        //delegate: Text { text: title }
    }
}
...