Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Update: Forum Guidelines & Code of Conduct

    Unsolved create listView with certain items from array

    General and Desktop
    array listview modeldata model
    1
    1
    481
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Ldweller last edited by

      Hello!

      I am trying to create a listView of names on selected calendar date(s), which if the date in the calendar matches, will display the userName in the listView;

      My array is created from a firebase read on userLogin, and using the for loop and image visibility i am adding a marker to dates in the array, how could i amend the loop or what would i add to as my ListModel to show this?

      I have tried many variations of things such as

      List View {
          model: arrayFromFireBase
      
              delegate: Text {text: modelData.name } }
      

      But am struggling to get it working! below is the code which applies to adding the date marker to my calendar, I am wondering if I need to alter the loop to apply to the name property also as my array looks like [{"name":"Edward","date":"2018-06-12"},{"name":"Dave","date":"2018-09-10"},{"name":"Tom","date":"2018-06-12"}] in the console. from This on the 6/12/18 there would be two names in the listView (Edward&Tom), whereas just the one name (Dave) on the 10/9

      Any help would be amazing!!!
      Thanks

      Main.qml:

          App {
      
          property var arrayFromFireBase: []
      
           onLoggedIn:  {
            firebaseDb.getUserValue("dates/selectedDates", {},
                                          function(success, key, value) {
                                          if(success) {
                                               for(var idx in value)
                                                  arrayFromFireBase.push(new Date(value[idx].date).getTime())
                                          })}}
      
      
      CalendarPage.qml:
      
          Page {
          AppButton {
                id: saveButton
                text: "Save & Request"
                    onClicked: {
                        userData.selectedDates.push({"date": calendar.selectedDate});
                        console.log(JSON.stringify(userData));
                        firebaseDb.setUserValue("dates", userData)
                        }
                 }
      
          property var userData: { 
                  "selectedDates": [{}]
                 }
      
          Image {
             visible: arrayFromFireBase.indexOf(styleData.date.getTime()) > -1
            }
          }
      
      1 Reply Last reply Reply Quote 0
      • First post
        Last post