我试图设计一个如下所示的屏幕。我可以为几个设备(例如iPhone 5和5S)进行此设计。这意味着我的应用程序可以在iPhone 5和5S上正常运行。但是当我尝试在iPhone 6或6S上运行它时,我的设计被破坏并中断。我如何为所有设备进行通用设计?适应所有具有自动布局的设备
-3
A
回答
2
这里是一个函数,给出了一个CGPoint从中心偏移,对于给定指标
func offset(forIndex index: Int) -> CGPoint {
let part = M_PI/11.0
let phi = part * Double(index)
let x = Double(UIScreen.mainScreen().bounds.width) * sin(phi)
let y = Double(UIScreen.mainScreen().bounds.height) * cos(phi)
print("----")
print("index \(index)")
print("x \(x)")
print("y \(y)")
return CGPoint(x: CGFloat(x), y: CGFloat(y))
}
有了这个功能,你可以定位你的按钮相应
+0
我更喜欢使用自动布局来实现这种自定义的策略。 –
0
所以,这里有一个我以前用过的图案:
灰色条只是UIViews的扩大和缩小,以保持所有的按钮在不同的屏幕上相同的间隔。在你的实际设计中,这些将是透明的。这些视图中的每一个都有一个限制,使它们具有相同的高度 - 这将保持按钮之间的空间相等,而不管屏幕的垂直大小如何。
其他约束是中间按钮被限制为垂直居中,并且每个按钮的包含视图的尾部空间增加。每个按钮是也约束有0点的间距上方和下方的看法。
当你在一个小屏幕上运行这个,间隔将收缩,并在一个更大的屏幕上,他们会增长。在较大的屏幕上,如果设置为使用固有尺寸,您还应该获得更大的按钮。
这不会保留椭圆的形状,但你可以使按钮的x坐标与屏幕宽度成正比,我猜。取决于你的目标是整体外观。
相关问题
- 1. 为所有设备自动布局UIImage
- 2. 所有设备的自举列布局
- 3. 在所有设备上都有适当布局的程序android
- 4. 所有设备的Android单屏布局
- 5. 自动布局背景图像在所有设备上工作
- 6. 具有自动布局的典型UITableViewCell
- 7. 具有自动布局的动态uiview布局
- 8. iOS 7自动布局与iOS 8自适应布局是否有区别?
- 9. 在所有设备上具有额外的相同布局。怎么样?
- 10. 多设备中的Swift自动布局
- 11. iPad的自适应布局
- 12. css的自适应布局
- 13. iOS自动布局重设我的所有图像位置
- 14. 准备应用程序在3.5“和4”没有自动布局
- 15. 自适应布局移动问题
- 16. Qt布局内容自动适应
- 17. 布局不适合所有屏幕
- 18. 建设适应布局RelativePanel
- 19. Differerentiate布局具有相同的DPI两个设备
- 20. 具有不规则布局的Android HDPI设备
- 21. 支持具有不同布局的不同设备
- 22. 自适应2列布局
- 23. 适合所有方向的设计布局
- 24. 将px值分配给所有Android设备的布局
- 25. 所有设备的Android XML布局(小/普通/大/ XLarge等)
- 26. 实际设备上的布局显示有所不同
- 27. UWP - 使用XAML为所有设备构建漂亮的布局
- 28. 适用于所有移动设备的相同设计
- 29. HTML响应所有设备
- 30. 设计具有不同布局的RecyclerView
使用自动布局。 – Moritz
你可以在这里发布你的代码给我们看吗? – keithbhunter
我已经使用Autolayout,所以我没有代码。 – Alp