Intereting Posts
Google App Engine – автоматическое масштабирование всегда с помощью экземпляра? GetWidth () и getHeight () из View возвращает 0 Проект Android / Scala в IntelliJ 14 компилируется, но сбой при запуске не находит Scala class Android ViewPager Exception после нажатия кнопки возврата Видеочат с помощью XMPP Проверка, работает ли приложение Android в фоновом режиме "Java.lang.IllegalStateException: Невозможно изменить тег фрагмента" при использовании ViewPager # setCurrentItem () Android: многострочный текстовый просмотр в Tablerow по вертикали Как определить, когда приложение Android переходит на задний план и возвращается на передний план Отсутствует тип ресурса XML для значения PercentRelativeLayout Percentage? Разница между Total Private Dirty, Total Pss, Total Shared Dirty в Android Как перенести некоторые данные в другой фрагмент? Android findViewById в сервисе Утечка памяти Xamarin для Android с простой активностью Android Gradle – конфигурация подписи загрузки из внешнего файла

Android – отключить прокрутку по горизонталиScrollView

Как я могу отключить overcroll на HorizontalScrollView под Android 2.2?

редактировать

Я использую для этого размышление:

HorizontalScrollView hh = (HorizontalScrollView) findViewById(R.id.chartHorizontalView); viewCls = hh.getClass(); try { Method m = viewCls.getMethod("setOverScrollMode", new Class[] { int.class }); int OVER_SCROLL_NEVER = (Integer) viewCls.getField( "OVER_SCROLL_NEVER").get(hh); m.invoke(hh, OVER_SCROLL_NEVER); } catch (Exception e) { e.printStackTrace(); } 

Это правильно в документах, вызовите setOverScrollMode

На складе AOSP не было эффекта сбрасывания до Gingerbread , поэтому вопрос о том, как отключить их, не имеет смысла. Некоторые производители добавили свои собственные эффекты сверхсброса, такие как эффект отскока TouchWiz. Очевидно, что поскольку эффекты не являются частью SDK, в SDK нет способа отключить их!

На момент написания этой статьи, Froyo и ниже заняли около 2%. На мой взгляд, разумная вещь – нацелить версию sdk> = 9 и использовать что-то вроде

  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) { horizontalScrollView.setOverScrollMode(View.OVER_SCROLL_NEVER); } 

Таким образом, большинство пользователей не будут видеть эффект прокрутки свечения, но те 2% или менее пользователи, которые запускают Froyo с TouchWiz, по-прежнему будут видеть эффект отскока. Если вы действительно, абсолютно необходимо отключить все эффекты overscroll, которые вы могли бы использовать onScrollListener, чтобы предотвратить прокрутку в начале или конце или использовать отражение, чтобы иметь дело с TouchWiz, точно подобным этому примеру, или этот