我有一个通过Xamarin Studio中的Storyboard创建的UIViewController,它不会滚动。
我的内容是动态的,视图的高度应根据从数据库加载的数据而有所不同。我搜索过,我无法找到一种方法来在Xamarin中以编程/动态方式设置它。
我已经看到一些建议,我应该把它放在滚动视图中,但我不知道如何在ScrollView中放置控件。
非常感谢任何帮助。
答案 0 :(得分:10)
因此,您需要将UIScrollview控件拖入View Controller。将此滚动视图与插座连接。
现在为了滚动滚动视图 - >它需要知道它将要持有的内容的高度。有两种方法可以定义:
如果您使用自动布局:
布局结构
[Root View]
[ScrollView]
[Descendant View]
[UILabel]
[UITextField]
[UIButton]
...
这将动态设置ScrollView的内容大小。
如果您没有使用自动布局:
您需要确定内容的高度,然后设置ScrollView.ContentSize = height of the content
。
答案 1 :(得分:1)
更好的选择是使用UITableViewDataSource和UITableViewDelegate创建UITableView。然后,对于每种类型的控件,您将实现UITableViewCell。下面是通用表视图的一个示例,它允许您覆盖高度和单元格getter,它们是动态表视图中最重要的部分。源代码适用于Xamarin Forms,但可以使用原生UITableView。