在 ios 7.1 中自定义按钮形状

Posted

技术标签:

【中文标题】在 ios 7.1 中自定义按钮形状【英文标题】:Customize Button shape in ios 7.1 【发布时间】:2014-03-12 07:46:29 【问题描述】:

Apple 在 ios 7.1 中添加了Button shape 功能。但我需要为我的应用程序禁用它或更改其默认颜色、形状以匹配我的应用程序的 UI。可以不使用自定义类型按钮吗?请帮帮我。

【问题讨论】:

你找到解决办法了吗 @Spynet 现在还在,没有。如果我收到或标记为已接受,我会分享。 【参考方案1】:

子类按钮并尝试你想要的形状......

#import "YourButton.h"
#import <QuartzCore/QuartzCore.h>

@implementation YourButton

- (id)initWithFrame:(CGRect)frame

    self = [super initWithFrame:frame];
    if (self) 
        // Initialization code
    
    return self;




- (void)awakeFromNib

    [super awakeFromNib];
    CALayer *mask = [CALayer layer];
    mask.contents = (id)[[UIImage imageNamed:@"ge.png"] CGImage]; // ge is the black & white png image
    CGSize size = self.frame.size;
    mask.frame = CGRectMake(0, 0, size.width, size.height);
    self.layer.mask = mask;
    [self.layer setMasksToBounds:YES];


@end

附上Here的样品供您参考

【讨论】:

【参考方案2】:

这些功能反映在苹果默认按钮控件(可能是导航栏)上。 您无需担心,这些功能并非特定于应用,而是适用于所有应用。

如果你想忽略,不要使用默认按钮,而是使用自定义。

附: OP编辑问题后:

如果不使用自定义实现,您将无法实现这一点。

更多:reference

【讨论】:

【参考方案3】:

您可以根据您想要查看的方式使其自定义类型和使用图像。

【讨论】:

谢谢,使用自定义图像是一种解决方案,但有没有办法改变默认的感觉和外观? @DevojyotiAich 好吧,唯一的方法是采用自定义类型 :) 如果您喜欢答案,那么您可以接受它。【参考方案4】:

如果您使用UINavigationBarUIToolbar 作为按钮的,那么您将获得比条形颜色稍深的颜色。

否则,您可以获得与文本颜色匹配的下划线,所以我认为这不应该打扰您。保持原样。

【讨论】:

以上是关于在 ios 7.1 中自定义按钮形状的主要内容,如果未能解决你的问题,请参考以下文章

当按钮是iOS中自定义单元格的子视图时,如何动态更改按钮文本?

iOS中自定义导航栏左边返回按钮和按钮不能靠左的问题

iOS中自定义导航栏左边返回按钮和按钮不能靠左的问题

在ios的uitableview中自定义单元格编辑样式

Expression Blend创建自定义按钮

在 QML 中自定义按钮