2013-09-19 5 views
0

У меня есть представление List в bb 10 App, где мне нужно показать данные, прочитанные с сервера. Я могу это сделать. Но проблема здесь в том, что для чтения данных с сервера требуется некоторое время и показать его в виде списка. Теперь я хочу уведомить пользователя со значением полного текста «Подождите ...» в индикаторе активности, пока данные не будут показаны и не исчезнет Индикатор активности. Как только данные будут отображаться в виде списка.blackberry 10 cascades Activity Indicator for listview

Container { 
     objectName: "root" 
     id: root 

     ActivityIndicator { 
      id: myIndicator 
      preferredWidth: 500 
     } 
     Button { 
      text: "Start" 
      onClicked: { 
       if (! myIndicator.running) { 
        // Start the activity here. 
        myIndicator.start(); 
        text = "Stop"; 
       } else { 
        // Stop it here 
        root.activityDone(); 
        text = "Start" 
       } 
      } 
     } 
     // This function is called when the activity is done. 
     function activityDone() { 
      myIndicator.stop(); 
     } 
    } 

Я нашел небольшой пример, как это ... Как я могу показать, как тест «Пожалуйста, подождите» и сделать его Исчезают после того, как данные отображаются в виде списка.

спасибо !!!

+0

по щелчку показать это, onDataLoaded скрыть его (или OnError) –

+0

пожалуйста, вы можете уточнить, я не нашел ни одного сигнала QML «onDataLoaded» в ListView – Sharath

ответ

0

Вы можете сделать ярлык с текстом «Подождите» и заставить его появляться/исчезать, изменяя непрозрачность метки.

поплавка непрозрачности Inherited

Непрозрачность визуального значения node.A между 0.0 (прозрачный) и 1.0 (непрозрачный). Это локальная непрозрачность визуального узла, то есть не учитывающая непрозрачность предков. По умолчанию непрозрачность 1.0 (непрозрачная).

Для подробно см cascades label

+0

я маркировать Идея Большой !!! но как заставить «Индикатор активности» исчезнуть, как только данные будут отображаться в виде списка. – Sharath

+0

Вы делаете вызов сервера с использованием объекта XMLHttpRequest в QML? Если это так, вы можете использовать [this] (http://stackoverflow.com/questions/17914565/parsing-json-in-qt-c-blackberry-10/17951981#17951981) код. Просто добавьте 'myIndicator.start(); myLabel.opacity = 1.0' перед 'request.send()' и 'myIndicator.stop(); myLabel.opacity = 0.0' внутри '(request.readyState === XMLHttpRequest.DONE), если оператор' –