2013-02-18 4 views
3

Я хочу реализовать следующее поведение в моем приложении: У меня есть UIScrollView на мой взгляд, с настраиваемым contentSize и я хочу поставить UIButton в левом нижнем углу, чтобы остаться там, когда я прокручивать вид I хотите, чтобы кнопка оставалась ровно там, где она была, с прокруткой содержимого прокрутки в одно и то же время.Плавающий UIButton на UIScrollView

Что было бы лучшим способом сделать это? Благодаря!

ответ

10

Вы используете интерфейс Builder/раскадровки? Если это так, просто добавьте прокрутку. Затем добавьте кнопку, но не добавляйте кнопку в качестве подсмотра прокрутки. Просто добавьте его как родного брата. Но убедитесь, что сначала просматривается прокрутка. Иерархия должна выглядеть следующим образом:

\--View (The underlaying UIView 
    \--scrollView (The UIScrollView) 
     \-- anyView (Any subviews of the scroll view come here 
    \--button (The UIButton) 

При этом кнопка не зависит от зрения прокрутки, его прокрутки или размера контента. Он вполне может быть размещен над просмотром прокрутки.

Редактировать: быстрый (не проверенный синтаксисом и т. Д.) В качестве примера для программного решения.

UIScrollView *myScroller = [[UIScrollView alloc] initWith...]; 
UIImageView *someImage = [[UIImageView alloc] initWith...]; //Just a sample subivew. 
UILabel *someLabel = [[UILabel alloc] initWith...]; //Another sample. 
UIButton *myButton [[UIButton alloc] initWith...]; 

[self.view addSubView:myScroller]; 
[myScroller addSubView:someImage]; 
[self.view addSubView:myButton]; //it is important, that myScroller was added first 
[myScroller addSubView:someLable]; //the sequence of addding subviews to the content does not matter much. 

(Вы можете иметь один просмотр контента в пределах вашего зрения скроллер, который затем контейнер для всех subivews. Но это не влияет на то, что я пытаюсь объяснить.)

+0

К сожалению, я не использую IB или XIBs (но я понимаю, спасибо! –

+0

Это не имеет большого значения. Просто добавьте UIScrollView в качестве подзадача UIView и добавьте UIButton в тот же UIView объект как подпункт.Они будут использовать одну и ту же систему координат, а прокрутка и изменение размера содержимого не будут влиять на кнопку вообще. Просто убедитесь, что сначала прокручивается представление прокрутки, поэтому оно сначала нарисовано. даже позже. –

0

Вы можете добавить первую кнопку на просмотр Затем прокрутите изображение в окне просмотра и, пожалуйста, проверьте xib, что кнопка не должна быть в scrollview. Попробуйте это, я думаю, что это работа для вас.

+0

Если он добавляет сначала, а затем прокрутки, а вид прокрутки плохо перекрывается или даже скрывает кнопку. По крайней мере, кнопка не может быть нажата. –

Смежные вопросы