ios - 如何通过UIkit将组件嵌套到组件?

标签 ios swift uikit

我正在尝试创建思维导图应用程序的思维导图对象。该对象包含文本。所以我想在矩形内添加一个标签。如何将标签嵌套到矩形中?

我创建了两个组件。第一个 CGrectangle,第二个 UIlabel。我在 CGrectangle 代码后面添加了 UIlabel 代码。

import UIKit

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        let rect = CGRect(x: 140, y: 350, width: 100, height: 100)
        let myView = UIView(frame: rect)
        myView.backgroundColor = UIColor.lightGray

        let label = UILabel(frame: CGRect(x: 0, y: 0, width: 200, height: 21))
        label.center = CGPoint(x: 160, y: 285)
        label.textAlignment = .center
        label.text = "I'm a test label"

        myView.addSubview(label)
        self.view.addSubview(myView)
    }
}

添加的UIlabel位置下移。

最佳答案

您为标签指定的位置需要相对于其父 View (myView)。 myView 为 100x100,因此标签的中心需要为 50, 50。标签的宽度是矩形大小的两倍。这不是一个好主意。

关于ios - 如何通过UIkit将组件嵌套到组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54149687/

相关文章:

ios - 将 SpriteNode 与碰撞表面对齐 SpriteKit Swift3

iPhone - 是否可以覆盖 UITableViewCell setSelected :animated

iphone - UIView 大小不接受大于 17000 像素的大小

ios - 当设置为 "Link All"时,DependencyService.Get 返回 null

iphone - 尽管 PList 设置正确,但状态栏仍出现在 iOS 7 中

ios - dispatch_queue_t 和 TableView

ios - Sprite Kit 碰撞次数超过 1 次

ios - 如何快速在 UIWebView 上添加点击手势识别器

iphone - "Program received signal: EXC_BAD_ACCESS"- 如何识别触发的行?

ios - 当 Timer 为每个 UITableViewCell 运行时,它们没有被正确回收