SMSegment 1.0.0

SMSegment 1.0.0

Samueler维护。



SMSegment 1.0.0

  • 作者
  • Samueler.Chen

SMSegment

SMSegment支持使用网络图片和本地图片设置带有图片的标签。

功能

  • 支持多种样式,包括文字、图片以及图文结合的样式。
  • 支持使用“URL”显示网络图片。
  • 支持使用文本属性进行高级标题样式设置,包括字体和颜色。
  • 支持水平滚动和居中显示。
  • 支持使用块来观察索引变化。
  • 支持ARC和iOS >= 8。

安装

CocoaPods

安装SMSegment最简单的方式是通过CocoaPods

pod 'SMSegment'

老式方法

  • 将资源文件(resourle)添加到项目中。
  • 在您想要添加控件的位置导入:#import "SMSegment.h"

使用

您可以通过实例函数和类函数创建 'SMSegment' 实例。

NSArray *titles = @[@"One", @"Two", @"Three", @"Four", @"Five",@"Six", @"Seven", @"Eight", @"Nine", @"Ten"];
NSString *urlString = @"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1529668872575&di=c1f145e6c728b8bb145e8d2a10193155&imgtype=0&src=http%3A%2F%2Fimg.zcool.cn%2Fcommunity%2F0196a156c937e46ac7252ce68a8504.png";
NSArray *images = @[@"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal", @"sc_normal"];
NSArray *selectedImages = @[@"urlString", @"sc_selected", @"sc_selected", @"sc_selected", @"sc_selected", @"sc_selected", @"sc_selected", @"urlString", @"sc_selected", @"sc_selected"];
SMSegment *textSegment = [[SMSegment alloc] initWithTitles:titles]; 
SMSegment *imageSegment = [[SMSegment alloc] initWithImages:images selectedImages:selectedImages];
SMSegment *textImageSegment = [[SMSegment alloc] initWithImages:images selectedImages:selectedImages titles:titles];

或者

SMSegment *textSegment = [SMSegment segmentWithTitles:titles]; 
SMSegment *imageSegment = [SMSegment segmentWithImages:images selectedImages:selectedImages];
SMSegment *textImageSegment = [SMSegment segmentWithImages:images selectedImages:selectedImages titles:titles];

您可以像这样通过分区观察索引

segment.indexChangeBlock = ^(NSInteger index) {
    NSLog(@"to do something");
};

您也可以设置分区属性以改变分区的外观。要了解所有使用方法,请检查项目中的 'viewController.m' 文件。

注意

  1. 不要使用系统初始化函数创建实例,因为 SMSegment 禁止这些函数。
  2. 当分段类型为 'SMSegmentTypeImage' 时,请确保图像数量和选定图像数量相同。
  3. 当分段类型为 'SMSegmentTypeTextImage' 时,请确保标题、图像和选定图像的数量相同。

版权许可证

SMSegment 使用 MIT 许可证条款进行许可。请参阅 LICENSE 文件以获取详细信息。