2013-02-13 2 views
1

Когда приложение запустилось, я раздуваю индикатор выполнения от main.xml файл, который отображается до тех пор, пока список не будет пуст. Когда список заполняется данными, поступающими с URL-адреса, я должен отклонить этот индикатор выполнения. Как я могу сделать это без использования диалогового окна прогресса?Android - автоматически отменить индикатор выполнения

мой main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

    <ListView 
     android:id="@+id/list_view_places" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:drawSelectorOnTop="false" 
     android:fastScrollEnabled="true" > 
    </ListView> 

    <ProgressBar 
     android:id="@+id/empty_progress_bar" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" /> 

</RelativeLayout> 
+1

ознакомьтесь с этой ссылкой http://stackoverflow.com/questions/3771568/how-to-show-empty-view-when-listview-is-empty – Nishant

+0

спасибо за ссылку. это был правильный. –

ответ

8

Попробуйте что-то вроде:

ProgressBar bar = (ProgressBar) findViewById(R.id.empty_progress_bar); 
bar.setVisibility(View.GONE); 
+0

Это решение работает. Альтернативой является listview.setEmptyView (prog_bar); –

3

Если вы будете использовать фрагмент списка, то прогресс бар автоматически обрабатывается. Когда данные будут заполнены, он автоматически отключится.

Смежные вопросы