2016-07-02 2 views
6

Я создал ProgressBar программно, как показано ниже в моей деятельности. Как мне показать это?Создайте и покажите прогрессбар программно

progressBar = new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall); 
+0

Спасибо за ответы. Но я не использую ProgressDialog. Я хочу, чтобы progressBar показывал в рамках действия неопределенный. Благодарю. – user6304758

ответ

1

progressBar - виджет (просмотреть). Вам нужно добавить в группу просмотра.

Вы можете использовать ProgressDialog, чтобы показать прогресс загрузки Пример:

ProgressDialog proDialog = ProgressDialog.show(this, "title", "message"); 
+2

Уровень API 26 «ProgressDialog» устарел. – Asha

+0

then Как настроить правильную панель сообщений –

0

Каждое действие имеет вид контента. Это корневой вид вашей активности, который вы установили, вызвав setContentView(). Каждое представление на экране должно быть дочерним элементом этого представления (или дочерним элементом дочернего элемента и т. Д.). Исключением является диалог, который появляется в отдельном окне, но это еще одно обсуждение.

Если вы хотите, чтобы представление отображалось на экране, вы должны добавить его в какую-либо ViewGroup внутри своего содержимого.

На самом деле обычный способ использования индикаторов выполнения для загрузки отличается. Обычно вы добавляете его в свой мл, но вы устанавливаете его видимость GONE, чтобы он не отображался. Затем, когда вы хотите, чтобы он появился, вы установили его в VISIBLE. Таким образом, похоже, что индикатор выполнения появляется, но его действительно все время скрывали.

6

Вы можете попробовать этот код для добавления progressBar programaticlly к вашему расположению.

RelativeLayout layout = new RelativeLayout(this); 
ProgressBar progressBar = new ProgressBar(YourActivity.this,null,android.R.attr.progressBarStyleLarge); 
progressBar.setIndeterminate(true); 
progressBar.setVisibility(View.VISIBLE); 
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(100,100); 
params.addRule(RelativeLayout.CENTER_IN_PARENT); 
layout.addView(progressBar,params); 

setContentView(layout); 
0

вы можете добавить ProgressBar в XML-файл, как этот

<ProgressBar 
      android:id="@+id/pbProgress" 
      android:style="@style/Spinner" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" > 
     </ProgressBar> 

и видимый, невидимый это прагматично.

Этот способ добавил прогресс бар в файле XML , но если вы хотите добавил прагматично вы можете использовать progressBar.setVisibility (View.Visible), чтобы показать прогресс бар или вы можете использовать progressBar.setVisibility (View.Gone) чтобы скрыть индикатор выполнения активности.

+0

Я знаю, что это старый вопрос, но он действительно спросил ** Programmatically **, в вашем ответе обсуждается, как добавить его вручную через XML, и вы даже не указали, как сделать он видимый и невидимый программно. Пожалуйста, отредактируйте свой ответ – MosabJ

+0

Я отредактировал свой ответ, спасибо, прося улучшения. –

+0

setVisibility изменения не работают –

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