質問編集履歴

2

コードを追加しました。また、説明が誤っていたので、ビューの重ね方の部分について説明を修正しました。

2016/01/18 09:51

投稿

te_w
te_w

スコア19

test CHANGED
File without changes
test CHANGED
@@ -12,11 +12,9 @@
12
12
 
13
13
 
14
14
 
15
- スクロールビュー上にビュー1、ビュー2を置き、ビュー12をピンチで拡大させて、ビュー2だけスクロールさせず固定したい。
15
+ スクロールビュー上にスクロール用のビュー、その上にビュー1、ビュー2を置き、ピンチでビュー1ビュー2を拡大(ベースのビューも拡大)、ビュー2だけスクロールさせず固定したい。
16
16
 
17
17
  1つのスクロールビュー上にビューを2つaddSubviewし、1つをヘッダーのようなイメージで固定させたい。
18
-
19
-
20
18
 
21
19
 
22
20
 
@@ -27,3 +25,125 @@
27
25
  参考にしたサイト
28
26
 
29
27
  http://qiita.com/zaziko_github/items/93ae7b7311349396c1b4
28
+
29
+
30
+
31
+ ```
32
+
33
+ class ViewController: UIViewController,UIScrollViewDelegate {
34
+
35
+
36
+
37
+ //スクロール
38
+
39
+ private var scrView: UIScrollView!
40
+
41
+ private var view1: UIView!
42
+
43
+ private var view2: UIView!
44
+
45
+ private var view3: UIView!
46
+
47
+
48
+
49
+ override func viewDidLoad() {
50
+
51
+ super.viewDidLoad()
52
+
53
+ // Do any additional setup after loading the view, typically from a nib.
54
+
55
+
56
+
57
+ // ScrollViewを生成
58
+
59
+ scrView = UIScrollView()
60
+
61
+
62
+
63
+ scrView.frame = CGRectMake(0,0,500,500);
64
+
65
+ scrView.contentSize = CGSizeMake(1000, 1000)
66
+
67
+ scrView.contentOffset = CGPointMake(0, 0);
68
+
69
+ scrView.minimumZoomScale = 1
70
+
71
+ scrView.maximumZoomScale = 5
72
+
73
+ scrView.scrollEnabled = true
74
+
75
+
76
+
77
+ scrView.decelerationRate = UIScrollViewDecelerationRateNormal
78
+
79
+ scrView.backgroundColor = UIColor.orangeColor()
80
+
81
+ scrView.delegate = self
82
+
83
+ self.view.addSubview(scrView)
84
+
85
+
86
+
87
+ view1 = UIView(frame: CGRectMake(0,0,300,300))
88
+
89
+ view1.backgroundColor=UIColor.greenColor()
90
+
91
+ scrView.addSubview(view1)
92
+
93
+
94
+
95
+ //動かさないビュー
96
+
97
+ view2 = UIView(frame: CGRectMake(0,0,100,30))
98
+
99
+ view2.backgroundColor=UIColor.blueColor()
100
+
101
+ view1.addSubview(view2)
102
+
103
+
104
+
105
+ view3 = UIView(frame: CGRectMake(0,30,50,30))
106
+
107
+ view3.backgroundColor=UIColor.redColor()
108
+
109
+ view1.addSubview(view3)
110
+
111
+ }
112
+
113
+
114
+
115
+ func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
116
+
117
+ scrView.contentSize = CGSizeMake(1000, 1000)//サイズが変わってしまうため
118
+
119
+ return view1
120
+
121
+ }
122
+
123
+
124
+
125
+ func scrollViewDidScroll(scrollView: UIScrollView) {
126
+
127
+ let currentPoint = scrollView.contentOffset;
128
+
129
+ view2.frame = CGRectMake(currentPoint.x,currentPoint.y,100,30);
130
+
131
+ }
132
+
133
+
134
+
135
+ override func didReceiveMemoryWarning() {
136
+
137
+ super.didReceiveMemoryWarning()
138
+
139
+ // Dispose of any resources that can be recreated.
140
+
141
+ }
142
+
143
+ }
144
+
145
+
146
+
147
+
148
+
149
+ ```

1

ご確認ありがとうございます。追記しました。スクロールビューは1つです。

2016/01/18 09:51

投稿

te_w
te_w

スコア19

test CHANGED
File without changes
test CHANGED
@@ -14,6 +14,10 @@
14
14
 
15
15
  スクロールビュー上にビュー1、ビュー2を置き、ビュー1、2をピンチで拡大させて、ビュー2だけスクロールさせず固定したい。
16
16
 
17
+ 1つのスクロールビュー上にビューを2つaddSubviewし、1つをヘッダーのようなイメージで固定させたい。
18
+
19
+
20
+
17
21
 
18
22
 
19
23
  よろしくお願いいたします。