2011-07-07 21 views
1

私はXIBで定義されているUIScrollViewのを、持っている、と私は、このようにその内容を変更します。私はこのコードを呼び出す消えるスクロールバー

foreach(var subview in scrollViewer.Subviews) 
{ 
    subview.RemoveFromSuperview(); 
} 

scrollViewer.AddSubview(newView); 

scrollViewer.ContentSize = new System.Drawing.SizeF(newView.Frame.Width, newView.Frame.Height); 

後、ScrollViewerのの内容が置き換えられ、そして私はせずにスクロールすることができます問題(実際のスクロールはうまくいく)が、スクロールバーは消えてしまいます。

どうすればよいですか?スクロールバーは保持してください。

答えて

3

スクロールビューの最初のサブビューは、下のスクロールバーであるUIImageViewです。削除を避けるには、最初の項目をスキップします。

foreach(var subview in scrollViewer.Subviews.Skip(1)) 
{ 
    subview.RemoveFromSuperview(); 
} 

scrollViewer.AddSubview(newView); 

scrollViewer.ContentSize = new System.Drawing.SizeF(newView.Frame.Width, newView.Frame.Height); 
+0

悲しいです。 UIScrollViewの内容は無意にスクロールされますが、スクロールバーは表示されません。 –

+0

更新を参照してください。私のプロジェクトでは、私は後ろを反復して最後のアイテムを残していましたが、Skipメソッドはよりエレガントです。 – Candide

+0

あなたは問題の要点(UIImageView)を釘付けにしたが、まだ問題がある。私のテストで は、私は '[0]最初のサブビューが(それはまた、カスタムビューが位置にあることを' scrollViewer.Subviewsかもしれない常に定義あたりのスクロールバーを含むUIImageViewではないことに気づいた、とスクロールバーがです位置 'scrollViewer.Subviewsあなたはこれをしようとすると、[1]'ので、私はそれを修正しました –

関連する問題