2010-08-24 20 views
2

我正在尝试创建一个简单的QML应用程序,该应用程序将使用我的活动国际象棋游戏获取RSS源,并使用它进行操作。在这一点上,我只是尝试使用Feed内容填充列表视图,但即使Feed中应包含11个项目,它也只显示一个项目。这是一个错误还是我没有得到正确的东西?仅在QML应用程序中填充了一行ListView,有什么想法?

下面的代码:


    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 } 
       } 
     } 
    } 

的委托应该没事,因为同样的事情也与简单的委托我注释掉发生。

回答

6

您的模型和视图都很好,这是您的布局错误。尝试将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 } 
    } 
} 
+0

谢谢,这是票!只有anchors.fill:parent需要添加到Column和ListView元素中。布局的东西显然是Qt中最弱的地方...... – teukkam 2010-08-26 19:57:07

相关问题