您的位置:首页 > 产品设计 > UI/UE

使用HMSegmentedControl实现分段控件

2015-06-13 22:20 447 查看


郝萌主倾心贡献,尊重作者的劳动成果,请勿转载。

如果文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额随意,重在心意^_^ 

我要捐赠: 点击捐赠

Cocos2d-X源码下载:点我传送

HMSegmentedControl 是 UISegmentedControl 的替代品,模仿了 Google Currents 使用的效果。

HMSegmentedControl

A drop-in replacement for UISegmentedControl mimicking the style of the segmented control used in Google Currents and various other Google products.

Features

Supports both text and images
Font and all colors are customizable
Supports selection indicator both on top and bottom
Supports blocks
Works with ARC and iOS >= 5

Installation

CocoaPods

The easiest way of installing HMSegmentedControl is via CocoaPods.
pod 'HMSegmentedControl', '~> 1.1.0'

Cocoa-whaa?

If you haven't heard about CocoaPods (seriously, where were you?!), it's a dependency
manager for Xcode projects that provides very simple installation of libraries. Here's how to get started.

Install CocoaPods if not already available:

$ [sudo] gem install cocoapods
$ pod setup


Change to the directory of your Xcode project, and Create and Edit your Podfile and add HMSegmentedControl:

$ cd /path/to/MyProject
$ touch Podfile
$ edit Podfile
platform :ios, '5.0'
pod 'HMSegmentedControl', '~> 1.2.0'


Install into your project:

$ pod install


Open your project in Xcode from the .xcworkspace file (not the usual project file)

$ open MyProject.xcworkspace


Old-fashioned
way

Add 
HMSegmentedControl.h
 and 
HMSegmentedControl.m
 to
your project.
Add 
QuartzCore.framework
 to
your linked frameworks.
#import "HMSegmentedControl.h"
 where
you want to add the control.

Usage

The code below will create a segmented control with the default looks:

HMSegmentedControl *segmented = [[HMSegmentedControl alloc] initWithSectionTitles:@[@"已收公告",@"已发公告"]];
segmented.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth;
segmented.frame = CGRectMake(self.view.bounds.size.width/2-100, 4, 200, 40);
segmented.backgroundColor = [UIColor clearColor];
segmented.selectionIndicatorHeight = 3.0f;
segmented.font = [UIFont fontWithName:@"STHeitiSC-Light" size:19.0f];
segmented.textColor = WHRGB(255, 175, 185);
segmented.selectedTextColor = [UIColor whiteColor];
segmented.selectionIndicatorColor = [UIColor whiteColor];
segmented.selectionStyle = HMSegmentedControlSelectionStyleFullWidthStripe;
segmented.selectionIndicatorLocation = HMSegmentedControlSelectionIndicatorLocationDown;
[segmented addTarget:self action:@selector(segmentedControlChangedValue:) forControlEvents:UIControlEventValueChanged];
self.segmentedControl = segmented;
[self.navigationController.navigationBar addSubview:segmented];
Included is a demo project showing how to fully customise the control.




郝萌主倾心贡献,尊重作者的劳动成果,请勿转载。

如果文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额随意,重在心意^_^ 

我要捐赠: 点击捐赠

Cocos2d-X源码下载:点我传送
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息