Android: ImageSwitcher

Tengo un ImageSwitcher y 2 botones … "Siguiente" y "Anterior" para deslizar las imágenes … Pero su animación mi deslizamiento sólo en un lado de izquierda a derecha … ¿Cómo solucionar eso? Gracias…

Integer[] imageIDs = { R.drawable.image_one, R.drawable.image_two, R.drawable.image_tree }; private ImageSwitcher imageSwitcher; private Button nextButton; private Button previousButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final Animation in = AnimationUtils.loadAnimation(this, android.R.anim.slide_in_left); final Animation out = AnimationUtils.loadAnimation(this, android.R.anim.slide_out_right); imageSwitcher = (ImageSwitcher) findViewById(R.id.switcher1); imageSwitcher.setFactory(this); imageSwitcher.setInAnimation(in); imageSwitcher.setOutAnimation(out); imageSwitcher.setImageResource(imageIDs[0]); nextButton = (Button) findViewById(R.id.next); nextButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { imageSwitcher.setImageResource(imageIDs[1]); } }); previousButton = (Button) findViewById(R.id.previous); previousButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { imageSwitcher.setImageResource(imageIDs[0]); } }); } public View makeView() { ImageView imageView = new ImageView(this); imageView.setBackgroundColor(0xFF000000); imageView.setScaleType(ImageView.ScaleType.CENTER); imageView.setLayoutParams(new ImageSwitcher.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); return imageView; } 

Cambie la animación de entrada / salida en onClickListeners. Intente esto: (no se comprueba la sintaxis, etc …)

 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); imageSwitcher.setImageResource(imageIDs[0]); nextButton = (Button) findViewById(R.id.next); nextButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Animation out= AnimationUtils.loadAnimation(this, android.R.anim.slide_out_right); Animation in= AnimationUtils.loadAnimation(this, android.R.anim.slide_in_left); imageSwitcher = (ImageSwitcher) findViewById(R.id.switcher1); imageSwitcher.setFactory(this); imageSwitcher.setInAnimation(in); imageSwitcher.setOutAnimation(out); imageSwitcher.setImageResource(imageIDs[1]); } }); previousButton = (Button) findViewById(R.id.previous); previousButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { Animation out= AnimationUtils.loadAnimation(this, android.R.anim.slide_out_left); Animation in= AnimationUtils.loadAnimation(this, android.R.anim.slide_in_right); imageSwitcher.setFactory(this); imageSwitcher.setInAnimation(in); imageSwitcher.setOutAnimation(out); imageSwitcher.setImageResource(imageIDs[0]); } }); } public View makeView() { ImageView imageView = new ImageView(this); imageView.setBackgroundColor(0xFF000000); imageView.setScaleType(ImageView.ScaleType.CENTER); imageView.setLayoutParams(new ImageSwitcher.LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); return imageView; } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.