2011-06-15 3 views
1

Mon application contenant différentes mises en page.une d'entre elles est une mise en page linéaire.son contenu est dynamiquement ajoutant.je veux rendre cette mise en page horizontalement défilant tout en ajoutant son contenu.pour que j'ai écrit le code ci-dessous ..comment rendre une mise en page linéaire défilante automatiquement tout en ajoutant dynamiquement son contenu

<LinearLayout android:id="@+id/scoreballparent_layout" 
    android:layout_height="wrap_content" 
android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_above="@+id/score_layout"> 
    <HorizontalScrollView android:layout_height="wrap_content" 
    android:id="@+id/scrollView1" 
    android:layout_width="fill_parent" 
    > 
     <LinearLayout android:layout_width="fill_parent" 
     android:id="@+id/scoreball_layout" 
     android:layout_height="wrap_content" 
     > 

     </LinearLayout> 
    </HorizontalScrollView> 
</LinearLayout> 

il est working..but que je veux faire défiler automatiquement tout en ajoutant le contenu ... quelqu'un peut me aider plz ...

plus de code source:

private void scoreball_display(String score) 
    { 
     addscoreball = new Button(getApplicationContext()); 
     addscoreball.setId(134); 
     if(score=="WD" || score=="NB") 
     { 
      addscoreball.setTextAppearance(this,R.style.plainText); 
     } 
     else{ 
      addscoreball.setTextAppearance(this,R.style.BoldText); 
     } 

     addscoreball.setText(score); 
     addscoreball.setSingleLine(true); 
     addscoreball.setBackgroundDrawable(getResources().getDrawable  (R.drawable.white_ball)); 
     addscoreball.setGravity(Gravity.CENTER_HORIZONTAL); 
     addscoreball.setGravity(Gravity.CENTER_VERTICAL); 
     LinearLayout.LayoutParams addscoreball_Params = 
      new LinearLayout.LayoutParams(35,35); 
     scoreballlayout.addView(addscoreball,addscoreball_Params); 

     } 

dans cette méthode, il ajoute plus de contenus à ma disposition ...

Répondre

1

vous devez mettre à jour votre interface utilisateur lorsque nouvel élément est ajouté

d'abord initialiser HorizonatlScrollView en utilisant le code suivant

HorizontalScrollView s = (HorizontalScrollView) findViewById(R.id.HorizontalScrollView01); 

lorsqu'un nouvel élément est ajouté utiliser la ligne suivante là pour faire défiler votre HorizontalScrollView

runOnUiThread(new Runnable() { 

      public void run() { 
       // TODO Auto-generated method stub 
       s.fullScroll(HorizontalScrollView.FOCUS_RIGHT); 

      } 
     }); 

Merci Deepak

+0

J'ai essayé ceci mais ne fonctionne pas –

+0

pouvez-vous poster plus de code source? –

+0

j'avais posté plus de code source –

3

Mettez <ScrollView> comme la mise en page de parent ...

+0

u signifie la mise en page de parent de scrollview horizontal? –

Questions connexes