これはかなり簡単な解決策かもしれないが、ここでの提案は私にとっては役に立たない。私はUITableViewCellの中にUIScrollViewを持っています。このようにリストからスクロールビューに動的イメージを追加します。Xamarin iOS - スクロールビュー内のscrollviewの内容を合わせる
public void InitViews()
{
scrollViewThumbNails.ContentSize =
new SizeF((float)scrollViewThumbNails.Frame.Size.Width/listCount * listCount,
(float)scrollViewThumbNails.Frame.Size.Height);
for (int i = 0; i < listCount; i++)
{
var imageView = new UIImageView
{
Frame = new RectangleF((float)i * (float)scrollViewThumbNails.Frame.Size.Width/listCount, 0,
(float)scrollViewThumbNails.Frame.Size.Width/listCount, (float)scrollViewThumbNails.Frame.Size.Height),
UserInteractionEnabled = true,
ContentMode = UIViewContentMode.ScaleAspectFit
};
//call method to load the images
var index = i;
imageView.SetImage(
url: new NSUrl(allItems[i].AbsoluteUri),
placeholder: UIImage.FromFile("placeholder.png"),
completedBlock: (image, error, type, url) =>
{
//when download completes add it to the list
if (image != null)
{
allImages.Add(image);
scrollViewThumbNails.AddSubview(imageView);
}
});
}
私はこのようなViewDidAppear
でサブビューの合計数に基づいて、scrollviewのコンテンツのサイズを設定するためにアドバイスここに提案が見つかりました:
public override void ViewDidAppear (bool animated)
{
base.ViewDidAppear (animated);
CGRect contentRect = CGRect.Empty;
foreach(UIImageView view in scrollViewThumbNails.Subviews)
{
contentRect = CGRect.Union(contentRect,view.Frame);
}
scrollViewThumbNails.ContentSize = contentRect.Size;
}
imageViewsはまだ間隔をあけてみませんかされています下のスクリーンショットに示すように、画面/スクロールビューの端から開始しないでください。私は、最初の画像が常にスクロールビューの原点に位置付けられ、各画像の間隔が必要ではないことを望みます。コンテンツのサイズに基づいてスクロールビューを調整するにはどうすればよいですか?
誰かが私に行方不明を表示できますか?ありがとう。