LKbadgeView 1.1.0

LKbadgeView 1.1.0

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最后发布2014年12月

未指定 维护。



  • 作者:
  • lakesoft

自定义徽章视图

LKBadgeView 类在圆形矩形 '徽章' 上绘制文字。

参见日文文档

安装

您应该将以下文件复制到您的项目中。

LKBadgeView.h LKBadgeView.m

用法

LKBadgeView 是 UIView 的子类。因此,您可以将实例添加到某个视图。

LKBadgeView* badgeView =
    [[[LKBadgeView alloc] initWithFrame:CGRectMake(100, 200, 50, 20)] autorelease];
[self.view addSubview:badgeView];
badgeView.text = @"23";

您可以在 XIB 中使用此类。示例应用程序就是使用这种方式。

自定义

以下属性可以自定义视图的行为。

水平位置

@property (nonatomic, assign) LKBadgeViewHorizontalAlignment horizontalAlignment;

提供了左/居中/右对齐。
(默认)LKBadgeViewHorizontalAlignmentCenter

(背景颜色方便描述)

最小尺寸

最小尺寸有 2 种模式。

@property (nonatomic, assign) LKBadgeViewWidthMode widthMode;

  • LKBadgeViewWidthModeSmall:徽章形状变成圆形。
  • LKBadgeViewWidthModeStandard:当文本为 1 个或 2 个字符时,宽度为特定固定尺寸。3 个或更多字符。

(默认)LKBadgeViewWidthModeStandard

颜色

文字颜色和徽章颜色可变。

@property (nonatomic, retain) UIColor* textColor;
@property (nonatomic, retain) UIColor* badgeColor;

(默认)textColor 为白色,badgeColor 为灰色。

轮廓

LKBadgeView 可以使用轮廓。

当使用轮廓时,轮廓属性必须是 YES。如果属性为 NO,则不会绘制轮廓。轮廓有颜色属性和宽度属性。

@property (nonatomic, retain) UIColor* outlineColor;
@property (nonatomic, assign) CGFloat outlineWidth;
@property (nonatomic, assign) BOOL outline;

(默认)outlineColor 为灰色,outlineWidth 为 2.0。

您可以使用轮廓与 badgeColor 一起使用。

阴影

LKBadgeView 可以绘制阴影。

如果阴影属性为 YES,则绘制徽章的阴影。'shadowOfOutline' 用于轮廓阴影。'shadowOfText' 用于文字阴影。

@property (nonatomic, retain) BOOL shadow;
@property (nonatomic, assign) BOOL shadowOfOutline;
@property (nonatomic, assign) BOOL shadowOfText;

(默认)所有阴影属性均为 NO。

其他

截断

如果文本宽度大于 LKBadgeView 宽度,则文本将被截断。

(背景颜色方便描述)

徽章高度

徽章形状的高度是固定的(20px)。该值可作为常量使用。此外,类方法 +badgeHeight 也可用。

#define LK_BADGE_VIEW_STANDARD_HEIGHT       20.0
  :
 + (CGFloat)badgeHeight;

LKBadgeView的高度应为相同值或更大。如果LKBadgeView大于固定大小(20px),则徽章形状将被放置在LKBadgeView垂直位置的中心。通常LKBadgeView自身的高度与该值相同且很好。

许可

MIT

版权所有(c)2011 Hiroshi Hashiguchi

兹特此授予任何获得本软件及相关文档副本(“软件”)的人免费使用该软件的权利,无限制地处理该软件(包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许获得软件的人这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或实质部分中。

本软件按“现状”提供,不提供任何形式的保证,无论是明确的还是隐含的,包括但不限于适销性、针对特定目的的适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论其是基于合同、侵权或其他原因产生的,无论是否与该软件或其使用或其他方式有关。