Уменьшите размер точки или отступы, чтобы соответствовать всем индикаторам страницы на экране с помощью UIPageControl
У меня есть UIPageControl
, который имеет 22 страницы, поэтому 22 страницы индикатора. В ландшафте на iPhone все они видны с большим пространством слева и справа, но в портрете недостаточно горизонтального пространства для отображения всех точек (по крайней мере, на iPhone 4 и 5), поэтому два не видны и внешние два разрезаются пополам.
Я ищу способ уменьшить размер точек или уменьшить количество прокладок между точками, чтобы гарантировать, что все точки подходят на экране в портрете. Как это можно сделать?
![enter image description here]()
Ответы
Ответ 1
Если у вас есть много точек, я бы серьезно подумал о другом контроле. Но если вы хотите придерживаться UIPageControl, я бы просто масштабировал его, чтобы соответствовать на экране, с чем-то вроде:
pageControl.transform = CGAffineTransformMakeScale(0.7, 0.7);
Это уменьшает его до 70% от его первоначального размера - я оставляю его для определения наилучшего масштаба для вашего размера экрана/количества страниц.
Ответ 2
Код версии Swift 3: на основе ответа pbasdf.
pageControl.transform = CGAffineTransform(scaleX: 0.7, y: 0.7)
Ответ 3
Вы действительно не должны использовать UIPageControl для чего-то, что имеет 22 страницы.
Как пробовать что-то вроде метки, которая возвращает число вместо. Будет делать вам приложение выглядеть намного чище.
Хотя, если вы действительно хотите использовать pageControl, ответ pbasdf будет включен.
pageControl.transform = CGAffineTransformMakeScale (0,8, 0,8)
должен сделать трюк.