2010-02-09 7 views
4

En regardant l'exemple ApiDemos dans le SDK Android (1.5), il y a un bel exemple d'utilisation d'un ImageSwitcher, avec un objet Gallery pour fournir les actions de "changement d'image". L'application que je cherche à écrire, commençant dans le développement d'Android, a trois images que je veux être capable de faire défiler/défiler, ainsi ImageSwitcher ressemble à une bonne solution. Cependant, je ne veux pas nécessairement avoir de vignettes dans une galerie. Je veux soit une action de balayage, et/ou un bouton, pour faire défiler l'image précédente/suivante dans l'ensemble. L'exemple ImageSwitcher dans ApiDemos utilise une Galerie, et sans cette Galerie, ne fait rien.Comment utiliser un ImageSwitcher sans galerie

Si quelqu'un a suggéré un moyen de lier une sorte de contrôleur de bouton, ou un objet de balayage U/I, j'apprécierais le pointeur.

Désolé de poser une telle question niveau débutant.

Merci.

+0

Ne soyez pas désolé, il aide les débutants comme moi :) – Signcodeindie

Répondre

1

Vous pouvez l'utiliser comme ceci:

public class GalleryActivity extends Activity implements ViewFactory{  
    /** Called when the activity is first created. */ 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.gallery);   

     iSwitcher = (ImageSwitcher) findViewById(R.id.imageSwitcher1); 
     iSwitcher.setFactory(this); 
     iSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, 
       android.R.anim.fade_in)); 
     iSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, 
       android.R.anim.fade_out)); 

     iSwitcher.setImageDrawable(fetchImage(mImageURLS[0])); 

     iSwitcher.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View view) { 
       // CLICK HANDLER 
       // Change image like: 
       // iSwitcher.setImageDrawable(fetchImage(mImageURLS[1])); 
      } 
     }); 
    } 

    @Override 
    public View makeView() { 
     ImageView iView = new ImageView(this); 
     iView.setScaleType(ImageView.ScaleType.FIT_CENTER); 
     iView.setLayoutParams(new 
       ImageSwitcher.LayoutParams(
         LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT)); 
     iView.setBackgroundColor(0xFF000000); 
     return iView; 
    } 
} 

fetchImage(mImageURLS[0]) Retourne un objet Drawable

Questions connexes