0
我正在研究一个练习应用程序,其中用户界面取决于练习的类型。一些练习将问题作为文本和答案作为文本。一些练习将问题作为文本和答案作为图像。还有一个变化是图像和文字的问题和答案中的图像。我根据从API获得的值为特定练习创建一个问题对象。该对象具有许多可选的字段。例如,图像是可选的。现在我面临的挑战是处理这种动态UI的最佳方式是什么。用简单的英语,如果它有图像,显示imageView,如果它没有图像,则不要显示imageView并相应地调整其他UI元素。相同视图控制器的UI的多个变体
非常感谢您的回复。但我有个问题。假设您有两种视图变体:一种是imageView,另一种是没有imageView的。如果我们为它创建两个故事板,是不是会矫枉过正?因为其余的东西都是一样的,但是我们仍然会为它们创建重复的出口,因为它们在不同的故事板中。如果我在错误的方向思考,请纠正我。 –
在这种特殊情况下,你可以做几件事情,比如将'isHidden'属性的值更改为'false',将它从超级视图中移除(这会影响其他子视图的自动布局成本)。查看更新后的答案。 –
isHidden解决方案的问题是它仍然占据空间,它不会显示它。如果我想去removeFromSuperview路线,我必须确保没有其他视图依赖于它。对?你认为stackView会是一个很好的解决方案吗?因为即使你删除了一个元素,stackview也可以自行调整。 –