2016-12-30 4 views
0

Я не могу понять, почему мой ImageSwitcher не отображает изображение при первой загрузке Activity. Я установил ресурс изображения в методе onCreate, но изображение кажется невидимым, пока я не запустил анимацию. Анимация должна сдвинуть одно изображение и второе изображение. Когда я нажимаю кнопку, чтобы начать анимацию, я вижу, как исходное изображение вылезает из того места, где оно должно быть, но я не вижу его в начале. Я попытался установить изображение в ViewFactory и только снаружи, но это не похоже на работуImageSwitcher изображение не будет отображаться onCreate()

Вот мой imageSwitcher код:

mImageSwitcher = (ImageSwitcher)findViewById(R.id.imageSwitcher); 
    mImageSwitcher.setOnClickListener(mImageSwitcherClickListener); 

    mImageSwitcher.setFactory(new ViewFactory() { 
     @Override 
     public View makeView() { 
      ImageView view = new ImageView(getApplicationContext()); 
      view.setScaleType(ImageView.ScaleType.CENTER); 
      view.setLayoutParams(new 
        ImageSwitcher.LayoutParams(LayoutParams.WRAP_CONTENT, 
        LayoutParams.WRAP_CONTENT)); 
      view.setImageResource(R.mipmap.image); 
      return view; 
     } 
    }); 
    mImageSwitcher.setImageResource(R.mipmap.image); 

Вот макет для деятельности:

<ImageSwitcher 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/imageSwitcher" 
    android:layout_centerHorizontal="true" 
    android:layout_gravity="bottom|center" 
    android:alpha=".5" 
    android:scaleX="4" 
    android:scaleY="4" 
    android:layout_marginBottom="150dp" 
    android:animateFirstView="true"/> 
+0

почему вы используете мипмап использовать R.drawable.image – siddhesh

+0

я просто смотрел разницу между 2 папки .... Я не понимаю, есть разница – fmi

+0

дать ему попробуйте, если он работает – siddhesh

ответ

1

в учебниках это показывает, что вам нужно использовать анимацию

попробовать этот

Animation in = AnimationUtils.loadAnimation(this,android.R.anim.slide_in_left); 
imageSwitcher.setInAnimation(in); 
imageSwitcher.setOutAnimation(out); 

ссылки из этого link

+0

Ughhh ... У меня был этот код в моем методе onResume() ... Я идиот! СПАСИБО!!! – fmi

Смежные вопросы