реализовать масштабирование на ScrollView Android - PullRequest
4 голосов
/ 06 октября 2011

Я пытаюсь создать приложение, которое использует scrollView в Android.Так получилось, что scrollView не поддерживает матрицы.Поэтому я не могу сделать что-то вроде этого:

Matrix matrix = new Matrix();
Matrix eventMatrix = new Matrix();
// possible touch states
final static int NONE = 0;
final static int DRAG = 1;
final static int ZOOM = 2;
int touchState = NONE;

Кто-нибудь знает, возможно ли добиться увеличения, а также сжимая функциональность через другой процесс?Благодарим за помощь.

Спасибо.

[RE-EDIT]

scrollView будет служить контейнером, так что различные интерфейсы могут быть размещены внутри него.Таким образом, scrollView может служить одной частью пользовательского интерфейса.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 07 октября 2011

В зависимости от ваших конкретных требований вот несколько возможных подходов к этой проблеме:

  • Вы можете создать представление и настроить его параметры макета во время события onScroll.
  • Для простого масштабирования вы можете посмотреть анимацию. Это должно эффективно дать вам эффект увеличения. Для определенного элемента в представлении прокрутки.
  • Если вам нужно увеличить весь scrollView, вы можете окружить его контейнером представления (например, LinearLayout) и выполнить масштабирование этого представления.
1 голос
/ 06 октября 2011

Я не уверен, для чего вы используете ScrollView, но вы должны взглянуть на эту статью для разработчиков Android - Имеет смысл мультитач , чтобы получить функциональность пинч / зум.

0 голосов
/ 06 октября 2011

Если вы намерены предоставить возможность масштабирования изображения, то вам повезло!Я написал довольно тщательный класс, который расширяет ImageView для добавления функции масштабирования и панорамирования, с граничным тестированием.Проверьте это здесь .Если это не то, что вам нужно, вам нужно будет предоставить больше информации о том, что именно вы хотите сделать.Но этот код может быть адаптирован к вашим потребностям.

...