当前位置:  开发笔记 > 编程语言 > 正文

添加按钮到以编程方式创建的UIView

如何解决《添加按钮到以编程方式创建的UIView》经验,为你挑选了1个好方法。

我以编程方式创建了UIView和Button

var width = self.view.frame.width - 8
        var height = width/8

        newView.frame = CGRectMake(4, 39, width, height)
        newView.backgroundColor = UIColor.greenColor()
        self.view.addSubview(newView)

        var button = UIButton.buttonWithType(UIButtonType.System) as! UIButton
        button.frame = newView.frame
        button.backgroundColor = UIColor.whiteColor()
        button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
        button.setTitle("  All Hospitals/Clinics", forState: UIControlState.Normal)
        button.setTitleColor(UIColor.blackColor(), forState: .Normal)
        button.contentHorizontalAlignment = UIControlContentHorizontalAlignment.Left
        newView.addSubview(button)

我希望按钮位于UIView内部,并且具有与UIView完全相同的位置,宽度和高度

但结果就是这样

在此输入图像描述

我的代码出了什么问题?

提前致谢



1> Midhun MP..:

问题是由这行代码引起的:

button.frame = newView.frame // Equivalent to button.frame = CGRectMake(4, 39, width, height)

在您当前的实现中,按钮的x位置是4,y位置是39,这就是为什么你得到这样的结果.您需要指定相对于newView的按钮框架.

将按钮框设置代码更改为:

button.frame = CGRectMake(0, 0, width, height)

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有