Gonfler TextView et LinearLayout par programmation
Le problème, ici, je n'ai pas la même sortie afficher les résultats dans ces deux cas, je tiens à corriger le cas 1 pour obtenir les mêmes résultats de sortie de cas 2:
- Gonfler textview et linearlayout, puis ajouter textview pour linearlayout par programmation.
- Ajouter textview pour linearlayout en xml.
Code et de Sortie Pour le Cas 1:
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</LinearLayout>
text_view.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:textColor="#000000"
android:text="1"
android:textSize="20sp"
android:background="#AAAAAA"
android:gravity="center"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginTop="2dp"
android:layout_marginRight="2dp"
/>
méthode onCreate dans LayoutTestActivity.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout lt = (LinearLayout) getLayoutInflater().inflate(R.layout.main, null);
TextView tv = (TextView) getLayoutInflater().inflate(R.layout.text_view, null);
lt.addView(tv);
setContentView(lt);
}
vue de sortie (Non Correcte)
Code et de Sortie Pour le Cas 2:
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:textColor="#000000"
android:text="1"
android:textSize="20sp"
android:background="#AAAAAA"
android:gravity="center"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginTop="2dp"
android:layout_marginRight="2dp"
/>
</LinearLayout>
méthode onCreate dans LayoutTestActivity.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
vue de sortie (Correct)
OriginalL'auteur thalsharif | 2011-10-26
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas sûr si cela fait une différence - mais, ma suggestion est: est-ce
Fournir les
android:id="@+id/linearLayout"
-tag pour laLinearLayout
dans votremain.xml
.Ensuite ce faire:
Vous pouvez également tester si il y a une différence entre la fourniture de
null
ou votreLinearLayout lt
comme deuxième paramètre lors du gonflage duTextView
par exemple:Essayez de poster des photos de la différence dans les à des maquettes, Il peut révéler ce qu'est le problème.
J'ai posté des photos comme vous le demandez, j'espère que ce sera utile. Merci.
OriginalL'auteur kaspermoerch
Vous devez définir le LayoutParams dans le premier cas. Dans le second, ce qui est fait automatiquement depuis le TextView est dans le xml. Espérons que cette aide!
Dimitris Makris, votre réponse est un travail mais comme Raz dit qu'il fallait se fait automatiquement. J'espère que si il ya une autre solution. Merci à vous deux.
OriginalL'auteur Dimitris Makris
Je pense, en premier lieu, vous devez définir la page principale dans le setContentView() la méthode directement et par la suite faire gonfler.
Je pense de cette façon, il devrait fonctionner.
Pour garder la mise en page xml params vous devez passer les deux derniers paramètres de la méthode inflate ().
OriginalL'auteur Cata