Скользящая прокрутка TextView в iOS в Cocos2D или нативная - PullRequest
2 голосов
/ 31 октября 2011

Как сделать прокрутку UITextView, когда текст не является вертикальным?

Как

      +--------------+
     / Text         /
    / Here         /
   / Is           /
  / Not          /
 / Vertical     /
+--------------+

Где начало линий находится под тем же углом, что и изображение границы (фона).
Илимы можем использовать другой элемент, чем UITextView, если он может решить проблему.

Прокрутка только в вертикальном направлении,
Фоновое изображение фиксировано,
Нет, видимой является только часть, которая подходит для формы, другаяскрыто

Экран защищен частной лицензией, я не могу его опубликовать.

Ответы [ 2 ]

2 голосов
/ 03 ноября 2011

Вы можете наклонить текстовое поле, используя этот код:

float angle = -20.0/180*M_PI;
CATransform3D skew = CATransform3DIdentity;
skew.m21 = tanf(angle);
textField.layer.transform = skew;

РЕДАКТИРОВАТЬ: возможно, я неправильно понял ваш вопрос - вы хотите прямой текст, но наклонная прокрутка? Если это так, вы можете поместить свой UITextField (или UITextView) в UIScrollView, но дать scrollView противоположное преобразование для вашего textField, например,

float angle = -20.0/180*M_PI;
CATransform3D skew = CATransform3DIdentity;

skew.m21 = tanf(-angle);
scrollView.layer.transform = skew;

skew.m21 = tanf(angle);
textField.layer.transform = skew; 
2 голосов
/ 03 ноября 2011

Вы хотите сказать, что хотите, чтобы текстовое представление прокручивалось по диагонали?Это не самое элегантное решение, но что-то вроде этого:

  1. Реализация scrollViewDidScroll: метода делегата
  2. Получение существующего contentOffset при каждом обратном вызове делегата
  3. Измените значение x смещения на величину, соответствующую величине «диагонали», в которую вы хотите перейти
  4. [scrollView setContentOffset:newOffset animated:NO];

Также установитепрокрутка просмотра directionalLockEnabled до №.

...