2013-04-04 1 views
1

Я использую обложку в своем приложении для Android с этой ссылкой http://www.inter-fuser.com/2010/01/android-coverflow-widget.html, и я уже хорошо ее использую. Но моя проблема заключается в том, что версия Android 4.1 - это то, что потоки semms не работают хорошо, потому что изображения не центрируются или не выравниваются хорошо после выбора изображения. Но если версия Android ниже 4.0, она хорошо работает в видео по ссылке.Android Cover Flow

У кого-нибудь есть мысли относительно этой проблемы?

ответ

1

UPDATE

Исправление этой проблемы является внести следующие изменения в getChildStaticTransformation(View child, Transformation t)

protected boolean getChildStaticTransformation(View child, Transformation t) { 
       child.invalidate(); // add this line 
       final int childCenter = getCenterOfView(child); 
       final int childWidth = child.getWidth(); 
       int rotationAngle = 0; 

       t.clear(); 
       t.setTransformationType(Transformation.TYPE_MATRIX); 

       if (childCenter == mCoveflowCenter) { 
         transformImageBitmap((ImageView) child, t, 0); 
       } else { 
         rotationAngle = (int) (((float) (mCoveflowCenter - childCenter)/childWidth) * mMaxRotationAngle); 
         if (Math.abs(rotationAngle) > mMaxRotationAngle) { 
           rotationAngle = (rotationAngle < 0) ? -mMaxRotationAngle 
               : mMaxRotationAngle; 
         } 
         transformImageBitmap((ImageView) child, t, rotationAngle); 
       } 

       return true; 
     } 

-

У меня была такая же проблема в последнее время. Это связано с тем, что Gallery устарел. В качестве альтернативы я реализовал нечто похожее на это с помощью HorizontalScrollView и центрирования с использованием .scrollTo(). Проблема с этим решением заключается в том, что scrollTo() выравнивается с левой стороной View и поэтому вам нужно вычислить средний y0urself. Если макет заполняет экран, вам придется применить прописку к левой и правой стороне представления, чтобы заставить выбранный элемент к центру.

Осторожно. Горизонтальные представления прокрутки не имеют анимативной прокрутки, поэтому это будет привязкой к поведению. Вы можете обойти это, прокручивая с помощью таймера, но это не очень элегантное решение.

+0

Вы решили эту проблему? –

+0

nevermind Я просто решил это спасибо –

+0

@ user2031308, как у решена проблема, у меня такая же проблема. – kaibuki