2011-09-30 7 views
0

J'ai des problèmes dans TableLayout, problèmes de largeur. J'ai essayé beaucoup de recherche, mais tout ce que je reçois est une solution en utilisant xml. Je le fais par programme. Voici ce que je faisTableLayout dans le développement Android

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    TableLayout table = new TableLayout(this); 
    table.setStretchAllColumns(true); 
    table.setShrinkAllColumns(true); 


    TableRow tableTitle = new TableRow(this); 
    tableTitle.setGravity(Gravity.CENTER_HORIZONTAL); 

    TableRow name = new TableRow(this); 
    TableRow password = new TableRow(this); 
    TableRow button = new TableRow(this); 

    TextView empty = new TextView(this); 

    TextView title = new TextView(this); 
    title.setText("Hello table layout"); 
    title.setGravity(Gravity.CENTER_HORIZONTAL); 

    TextView txtUname = new TextView(this); 
    txtUname.setText("Username"); 

    TextView txtPass = new TextView(this); 
    txtPass.setText("Password"); 


    EditText uname = new EditText(this); 
    EditText pass = new EditText(this); 

    Button login = new Button(this); 
    login.setText("Login"); 

    name.addView(txtUname); 
    name.addView(uname); 

    password.addView(txtPass); 
    password.addView(pass); 

    button.addView(empty); 
    button.addView(login); 

    table.addView(name); 
    table.addView(password); 
    table.addView(button); 

    table.setColumnShrinkable(0, true); 

    setContentView(table); 
} 

Je veux rétrécir la première colonne. Que dois-je ajouter dans ce code?

Toute aide!

Répondre

0

Vous devriez envisager de déplacer votre fichier XML de mise en page. Cela rendrait votre vie plus facile.

Pour ne faire que la première colonne thermo-rétractable, remplacez setShrinkAllColumns(true) par setColumnShrinkable(0, true).

+0

Merci, cela fonctionne. Et en tant que programmeur, j'aimerais coder. Et tout en faisant des choses dynamiques, je suppose que le fichier XML ne va pas aider. – bunkdeath

+0

Je ne vois rien de "dynamique" dans votre code, cela ne peut pas être fait avec des mises en page. Et votre code sera beaucoup plus propre et plus facile à lire. – inazaruk

+0

il n'y a pas de code dynamique, bien que cela puisse commencer pour créer des formes dynamiques – bunkdeath