web-dev-qa-db-fra.com

Comment créer un ProgressBar par programme?

Mon application doit créer une petite ProgressBar par programme .ProgressBar n'a pas de méthode pour définir le style (je veux un petit ProgressBar). Le constructeur peut prendre une AttributeSet, mais c'est une interface Et elle nécessite l'implémentation d'un ensemble de fonctions. Existe-t-il un moyende définir le style ProgressBar small? (Je ne peux pas utiliser xml pour créer ProgressBar)

71
Arutha

La plupart du temps, si vous fournissez manuellement une AttributeSet, vous devez utiliser l'un des logiciels Android. Heureusement, ils ont exposé le jeu d'attributs qui décrit une petite barre de progression. Utilisez ce code:

progressBar = new ProgressBar(activity, null, Android.R.attr.progressBarStyleSmall);
167
Neil Traft

Créez un fichier XML de présentation dans le répertoire res/layout avec la barre de progression souhaitée contenant tous les attributs dont vous avez besoin:

<?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" ... />

Ensuite, dans la classe d'activité, vous pouvez créer un objet ProgressBar à partir de cette présentation:

LayoutInflater inflater = getLayoutInflater();
    ProgressBar bar = (ProgressBar ) inflater.inflate(R.layout.small_progress_bar, null);

où R.layout.small_progress_bar est lié à votre fichier XML de mise en page.

Pouvez-vous toujours pas utiliser le fichier XML?

11
plugmind

Activity.Java 

  progressBar = (ProgressBar) findViewById(R.id.progressbar);
 `progressBar.setVisibility(View.VISIBLE);`// To Show ProgressBar 
 `progressBar.setVisibility(View.INVISIBLE);` //To Hide ProgressBar

 

Vérifiez iciProgressDialog est obsolète. Quel est le fichier alternatif à utiliser?

0
Gowthaman M