2011-08-09 6 views
2

question assez facile ici, mais je ne suis pas encore un super-utilisateur java. J'utilise un ViewFlipper pour fournir un certain nombre d'images, et un tiroir coulissant pour contenir du texte spécifique à chaque image. Je voudrais que le texte du tiroir coulissant change en une chaîne spécifique en fonction de la vue enfant actuellement affichée. Voici le XML:Modifier textview dynamiquement dans Viewflipper

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical"> 
    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 
     <Button 
      android:id="@+id/previous" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Prev" /> 
     <Button 
      android:id="@+id/next" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Next" /> 
    </LinearLayout> 
    <ViewFlipper 
     android:id="@+id/flipper" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
     <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/image1"></ImageView> 
     <ImageView android:id="@+id/imageView2" android:layout_height="wrap_content" android:layout_width="wrap_content" android:src="@drawable/image2"></ImageView> 
      </ViewFlipper> 
</LinearLayout> 

est ici la java:

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


      flipper = (ViewFlipper)findViewById(R.id.flipper); 
      next = (Button) findViewById(R.id.next); 
      previous = (Button) findViewById(R.id.previous); 
      imageview1 = (ImageView)findViewById(R.id.imageView1); 
      imageview2 = (ImageView)findViewById(R.id.imageView2); 



      next.setOnClickListener(this); 
      previous.setOnClickListener(this); 
     } 



     @Override 
     public void onClick(View v) { 
      if (v == next) { 
       flipper.setInAnimation(inFromRightAnimation()); 
       flipper.setOutAnimation(outToLeftAnimation()); 
       flipper.showNext(); 
      } 

      if (v == previous) { 
       flipper.setInAnimation(inFromLeftAnimation()); 
       flipper.setOutAnimation(outToRightAnimation()); 
       flipper.showPrevious(); 

      } 
      } 

Je suis sûr que la réponse est vraiment évident, mais c'est pourquoi je besoin de votre aide .... MERCI!

+0

Où est votre code de tirage? – Jack

Répondre

2

Lorsque vous appelez showNext() et showPrevious(), mettez à jour votre TextView pour correspondre.

+0

merci pour cela! – benbeel

Questions connexes