如何为UIButton添加徽章

时间:2017-01-05 07:18:24

标签: ios swift uibutton badge

在我的应用中,我需要在左上方添加计数UIButton,如UIButtonItem。如何可能以及如何将MIBadgeButton添加到我的项目中。

2 个答案:

答案 0 :(得分:2)

要向UIBUtton添加徽章计数,您需要将自定义视图作为子视图添加到UIButton,没有直接的方法。 要将MIBadgeButton添加到项目中: 2种方式:

  1. 通过链接https://github.com/mustafaibrahim989/MIBadgeButton

  2. 中提到的CoCoaPod添加
  3. 添加为子模块 - >从Github下载项目。复制MIBadgeButton和MIBadgeLabel文件,然后将其添加到项目中。请参阅他们的示例项目以获得清晰的理解

答案 1 :(得分:0)

您可以使用此pod

首先在xcode中克隆存储库 然后将库导入文件中

  1. 将podfile添加到您的项目

  2. 将此行“ pod BadgeControl”添加到您的podfile

您的podfile就是这样

platform :ios, '9.0'
target 'myProject' do
use_frameworks!
# Pods for myProject
pod 'BadgeControl'
end

然后关闭您的Xcode项目 然后在您的终端中安装pod

然后打开myProject.xcworkspace而不是myProject.xcodeproj

打开情节提要添加按钮,将其连接到您的viewcontroller文件并为其命名 然后导入BadgeControl

import BadgeControl
class ViewController: UIViewController {

@IBOutlet weak var badgeButton: UIButton!

private var upperLeftBadge: BadgeController!

override func viewDidLoad() {
    super.viewDidLoad()

    // Add badge to button
    upperLeftBadge = BadgeController(for: badgeButton, in: .upperLeftCorner, badgeBackgroundColor: #colorLiteral(red: 0.9674351811, green: 0.2441418469, blue: 0.4023343325, alpha: 1) , badgeHeight: 20, badgeTextColor: UIColor.white,
                                  borderWidth: 3,)

    upperLeftBadge.addOrReplaceCurrent(with: "123 or abc", animated: true)

    upperLeftBadge.animateOnlyWhenBadgeIsNotYetPresent = true
    upperLeftBadge.animation = BadgeAnimations.leftRight
}
}

您可以使用lowerLeftCorner,upperRightCorner和lowerRightCorner更改徽章“ upperLeftCorner”的位置

您可以使用rightLeft,fadeIn和rolling更改动画“ leftRight”

您可以将badgeBackgroundColor和badgeTextColor更改为所需的任何颜色

您还可以更改badgeHeight

更改此行

upperLeftBadge.animateOnlyWhenBadgeIsNotYetPresent = false

如果希望在视图上已经存在徽标时进行动画处理。

运行您的项目。