Как создать ProgressBar программно?
мое приложение нужно создать небольшое ProgressBar
программно.
ProgressBar
не имеет метода для установки стиля (я хочу небольшой
progressBar). Конструктор может принимать AttributeSet
, однако это
интерфейс и require me реализует набор функций. Есть ли способ
чтобы установить ProgressBar
малый стиль? (Я не могу использовать XML для создания
ProgressBar
)
4 ответов
большую часть времени, если вы предоставляете AttributeSet
вручную вы должны использовать один из Android. К счастью, они предоставили набор атрибутов, который описывает небольшой индикатор выполнения. Используйте этот код:
progressBar = new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall);
создайте XML-файл макета в каталоге res/layout с требуемым индикатором выполнения, содержащим все необходимые атрибуты:
<?xml version="1.0" encoding="utf-8"?>
<ProgressBar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" ... />
далее в классе Activity вы можете создать объект ProgressBar из этого макета:
LayoutInflater inflater = getLayoutInflater();
ProgressBar bar = (ProgressBar ) inflater.inflate(R.layout.small_progress_bar, null);
где макет Р..small_progress_bar ссылки на файл XML макета.
вы все еще не можете использовать xml-файл?
активности.java
progressBar = (ProgressBar) findViewById(R.id.progressbar);
`progressBar.setVisibility(View.VISIBLE);`// To Show ProgressBar
`progressBar.setVisibility(View.INVISIBLE);` //To Hide ProgressBar
регистрация здесь ProgressDialog устарел.Какой альтернативный вариант использовать?
полный код для добавления индикатора выполнения программно
private ProgressDialog mProgressDialog;
mProgressDialog = new ProgressDialog(this);
mProgressDialog.setMessage("Signing........");
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
mProgressDialog.setCancelable(false);
вызов ниже метода, чтобы показать bar
mProgressDialog.show();
вызов ниже, чтобы скрыть панель
mProgressDialog.dismiss();