Centrage de la ProgressBar par programmation sous Android

Je suis en train de centre un ProgressBar par programmation à l'aide de l'suivantes:

ViewGroup layout = (ViewGroup) findViewById(android.R.id.content).getRootView();
progressBar = newProgressBar(SignInActivity.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);

Le réglage de la taille semble fonctionner bien, mais le ProgressBar n'a pas du centre dans la mise en page existante (définie par xml avec une relative mise en page). Est-il quelque chose de manifestement mal ici?

Le XML est comme suit:

<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=".test"
android:typeface="monospace">

</RelativeLayout>

c'est à dire c'est juste un vide relatif de mise en page pour tester et voir si je peux l'obtenir par programmation d'ajouter une barre de progression.

Grâce.

Merci de poster le code XML 🙂
Pourquoi prenez-vous l'effort de créer par programmation, lorsque vous pouvez l'obtenir en xml?
Je suis la création d'une classe comme c'est un point de vue, je veux injecter de manière dynamique au fur et lors de différents processus sont en place dans l'application. Le faire de cette façon, je n'ai pas à mettre dans toutes les mises en page. Je peux juste instancier un objet et l'ajouter à la configuration actuelle.

OriginalL'auteur James B | 2013-08-18