【问题标题】:Transparent button with border带边框的透明按钮
【发布时间】:2013-01-13 04:35:28
【问题描述】:

我试图通过使它们透明但仍然有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。

在第一张图片中,导航栏上的按钮对于导航栏的背景是半透明的。

在左侧的第二张图片中,“Action Composer”按钮是透明的,但仍有边框。

【问题讨论】:

    标签: iphone ios objective-c uibutton transparency


    【解决方案1】:

    试试这个:

    这将创建一个透明按钮:

    UIButton *button=[UIButton buttonWithType:UIButtonTypeCustom];
    button.frame  GRectMake(x, y, w, h);
    [button addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];
    [button setTitle:@"Button" forState:UIControlStateNormal];
    button.backgroundColor=[UIColor clearColor];
    [button setTitleColor:[UIColor colorWithRed:0.3 green:0.1 blue:0.4 alpha:1.0] forState:UIControlStateNormal];
    [self.view addSubview:btn];
    

    现在是边框:

    [[button layer] setBorderWidth:2.0f];
    [[button layer] setBorderColor:[UIColor greenColor].CGColor];
    

    【讨论】:

      【解决方案2】:

      最简单的方法是为按钮创建一个图片资源。

      图像将有一个边框和一个清晰的中间。

      然后将图片作为按钮图片。

      【讨论】:

      • 我同意这一点。创建图片,使用resizableImageWithCapInsets:方法创建scale9-grid图片
      • 是的,stretchableImages 是要走的路。
      • +1。屏幕截图中使用的图像实际上并不透明。
      【解决方案3】:

      我建议您看看FTWButton。它是一个超级可定制的 UIControl,它复制了 UIButton 并在外观方面提供了疯狂的多功能性。它在控制状态之间也有一些不错的动画。

      它带有一些内置样式,但您可以根据自己的喜好完全自定义按钮。

      我与这个项目没有任何关系,我只是将它用于我自己的一个项目并喜欢它:)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-04-22
        • 1970-01-01
        • 1970-01-01
        • 2014-12-08
        • 2021-10-02
        • 2019-08-19
        • 1970-01-01
        相关资源
        最近更新 更多