【问题标题】:Rounded Rect UIButton without the border无边框圆角矩形 UIButton
【发布时间】:2011-02-03 03:03:11
【问题描述】:

我正在尝试绘制一个普通的圆角矩形UIButton,但没有边框。理想情况下,我希望能够更改 UIButton 上的某些设置以禁用边框。

我的问题是,如果我将按钮类型更改为“自定义”,我不会得到漂亮的蓝色选择渐变(我想保留它),而且我不知道如何手动绘制它。

【问题讨论】:

    标签: iphone objective-c cocoa-touch uibutton border


    【解决方案1】:

    将按钮类型更改为自定义。在“默认”、“突出显示”、“已选择”等下方有一个下拉菜单。制作蓝色渐变,将其设置为“突出显示状态配置”的图像。当您突出显示它时,这应该会给您蓝色渐变。如果你想要它被选中,使用“Selected”配置。

    【讨论】:

    • 理想情况下,我只想使用内置的蓝色渐变并保持圆角矩形形状。
    • 不要认为你可以 - 如果你想要圆角矩形,正确地塑造渐变和你的自定义图像像圆角矩形。不幸的是,我认为你将不得不伪造它而不是使用苹果的光泽。
    • 您也可以尝试使用button.layer.cornerRadius 属性。
    【解决方案2】:

    为此,我使用了一个只有一个段的 UISegmentedControl。你可以使用 tintColor 得到一个很好的渐变。事件连接略有不同,但没什么大不了的。

    This answer 提供更多详细信息。

    【讨论】:

    • 我最终选择了这个。它不提供纯白色背景,分段控件仍然有边框,但它与我想要做的足够接近。
    【解决方案3】:

    您可以使用自定义类型的 UIButton。 并设置合适的图片作为UIButton的背景。

    【讨论】:

    • 是的,我知道我可以做到这一点(我在问题中这么说)。我的问题是我是否可以删除边框而不使其成为自定义按钮。
    【解决方案4】:

    试试这个代码,

    button.layer.borderWidth = 3;    
    button.layer.borderColor = [UIColor whiteColor].CGColor;
    

    【讨论】:

      猜你喜欢
      • 2016-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多