`
zjjzmw1
  • 浏览: 1366338 次
  • 性别: Icon_minigender_1
  • 来自: 开封
社区版块
存档分类
最新评论

封装好的可以自定义的segment

    博客分类:
  • iOS
 
阅读更多

在公用类里写:

#import "Until.h"
#import "MCSegmentedControl.h"
@implementation Until

//共8个参数。
+(void)creatMySegment:(UIViewController *)viewController contentArray:(NSArray *)contentArray frame:(CGRect)frame selectedIndex:(int)selectedIndex selectedBgColor:(UIColor *)selectedBgColor unSelectedBgColor:(UIColor *)unSelectedBgColor selectedTextColor:(UIColor *)selectedTextColor unSelectedTextColor:(UIColor *)unSelectedTextColor{

    MCSegmentedControl *segmentedControl = [[MCSegmentedControl alloc] initWithItems:contentArray];
    segmentedControl.frame = frame;
    segmentedControl.selectedSegmentIndex = selectedIndex;
   
    segmentedControl.tintColor = selectedBgColor;//选中按钮的背景颜色。
    segmentedControl.unSelectedItemBackgroundGradientColors = [NSArray arrayWithObjects:
                                                               unSelectedBgColor,
                                                               unSelectedBgColor,
                                                               nil];//没有选中按钮的背景颜色。
   
    segmentedControl.selectedItemColor   = selectedTextColor;//选中按钮文字的颜色。
    segmentedControl.unselectedItemColor = unSelectedTextColor;//没有选中按钮文字的颜色。
    [segmentedControl addTarget:viewController action:@selector(segmentedControlDidChange:) forControlEvents:UIControlEventValueChanged];
    [viewController.view addSubview:segmentedControl];
    [segmentedControl release];
}

@end

 

在需要用到的类里写:

- (void)viewDidLoad
{
    [super viewDidLoad];
   
    [Until creatMySegment:self contentArray:[NSArray arrayWithObjects:
                                             @"one",
                                             @"two",
                                             [UIImage imageNamed:@"star.png"],
                                              nil] frame:CGRectMake(10.0f, 208.0f, 300.0f, 44.0f) selectedIndex:0 selectedBgColor:[UIColor redColor] unSelectedBgColor:[UIColor blueColor] selectedTextColor:[UIColor whiteColor] unSelectedTextColor:[UIColor blackColor]];
   
 
}
- (void)segmentedControlDidChange:(MCSegmentedControl *)sender
{
    NSLog(@"%d", [sender selectedSegmentIndex]);
}

 

当然还需要一个写好的方法。

下面有demo。。。。。。

 

 

 

2
0
分享到:
评论

相关推荐

    ios swift写的自定义segment

    在iOS开发中,Swift...在实际项目中,你可以将此自定义Segment控件封装到一个单独的库中,方便在未来项目中快速引入和使用。在提供的ARSegmentDemo文件中,应该包含了这个自定义Segment的完整实现,供你参考和学习。

    ios-自定义分段选择Segment.zip

    6. **自定义样式**:自定义Segment的一大优势就是能够灵活地调整样式。这包括字体、颜色、边框样式、背景图片等。开发者可以创建各种方法来设置这些样式,使得Segment与整体应用的UI风格保持一致。 7. **扩展性**:...

    ios自定义segement,有按钮有下滑线滑动

    5. **Auto Layout**: 自定义Segment Control需要处理好布局问题,使用Auto Layout可以确保在不同屏幕尺寸和设备上正确显示。 6. **动画**: 为了提供更好的用户体验,当按钮状态改变时,可以添加平滑的过渡动画,...

    ios-自定义封装分段选择的类似segment,比较灵活.zip

    本资源“ios-自定义封装分段选择的类似segment,比较灵活.zip”提供了一个自定义分段选择器的实现,旨在提高组件的可定制性和灵活性。 这个自定义分段选择器可能包括以下关键知识点: 1. **自定义视图(Custom ...

    ios-仿网易新闻header的segment视图控制器.zip

    1. **自定义Segment Control视图**:这个自定义视图可能继承自`UIView`,并添加了对每个段的自定义绘制。它可能使用`UIBezierPath`来创建形状,比如圆角矩形,以匹配网易新闻的风格。通过重写`draw(_ rect: CGRect)`...

    ios-自定义segmentview,包含有上下图片和无图片,有菜单列表的按钮封装.zip

    标题"ios-自定义segmentview,包含有上下图片和无图片,有菜单列表的按钮封装.zip"所涉及的知识点,主要是如何创建一个自定义的SegmentView,这个SegmentView具有可定制的上下图片,同时还能显示菜单列表,并提供了两...

    iOS下 自定义SegementControl

    `NSAttributedString.Key.font`可以用来设置字体样式,同样可以封装成一个方法供外部调用。 ```swift func setCustomLabelFont(font: UIFont) { for i in 0..<segmentCount { setTitleTextAttributes(...

    ios-容器简单封装.zip

    在iOS开发中,"ios-容器简单封装.zip" 这个资源可能是一个示例项目,展示了如何使用自定义的容器视图控制器来实现一个带有分段选择功能的界面。分段选择器(Segmented Control)是iOS应用中常见的UI元素,它允许用户...

    ios-一句话实现分段控制器的切换,有木有感觉到最强封装... 下载了不给STAR以后不分享了..zip

    然而,根据描述中的“一句话实现”和文件名“SegmentPageController”,我们可以推断这是一个高度封装的类,可能是自定义的UIViewController子类,它简化了这个过程。 这个SegmentPageController可能包含了以下特性...

    segment_wedge_bonds_halcon_

    同时,为了提高检测效率和精度,还可以结合深度学习等先进技术,训练自定义的焊点检测模型。 总结来说,"segment_wedge_bonds"是Halcon为半导体封装行业提供的专用焊点检测算法,通过图像处理和特征分析,能够有效...

    基于SVG和Segment.js的Loading加载按钮特效

    HTML5库是现代网页开发中的重要工具,它们提供了一系列预先封装好的函数和组件,以简化开发流程。在这个项目中,虽然没有明确提到具体的HTML5库,但我们可以推断,可能使用了诸如jQuery或其他类似库来辅助处理DOM...

    ios-【干货】每个APP都用得上的SegmentView.zip

    使用POP(Protocol Oriented Programming面对协议编程)封装指示器逻辑,可以为所欲为的自定义指示器效果; 提供更加全面丰富的效果,交互更加顺畅; 使用子类化管理cell样式,逻辑更清晰,扩展更简单;

    swift-多种功能集成带Refresh刷新的tableVSeg分段控件

    此外,为了提高代码复用性和模块化,开发者可能会将这个控件封装成一个自定义的View或Component,方便在其他项目中直接使用。 总之,“swift-多种功能集成带Refresh刷新的tableVSeg分段控件”是Swift UI开发中的一...

    jieba分词java版项目

    - **自定义应用**:根据项目需求,你可以修改源代码,添加新的功能或者调整分词参数。 5. **核心功能**: - **精确分词**:适用于大多数情况,力求准确,但可能会损失一些速度。 - **全模式**:尽可能多地切出...

    史上最全最好用的滑动控件

    结合标签“滑动 控件 IOS 封装 第三方”,我们可以推断这篇内容将聚焦于iOS平台,特别是第三方库对滑动控件的封装和优化。 首先,我们来了解一下滑动控件的基本概念。在iOS开发中,常见的滑动控件包括UITableView、...

    swift-仿微博的滑动菜单功能

    在Swift开发中,实现类似微博的滑动菜单功能是一项常见的需求,这主要涉及到自定义视图控制器、手势识别以及UI组件..."CJSegmentControl-master"这个项目提供了很好的学习材料,可以帮助开发者深入了解和掌握这些技术。

    ios-SegmentView.zip

    6. **自定义Segment样式**:可能`KFSegmentViewDemo`项目中包含了自定义分段控件样式的方法,比如改变文字颜色、背景色、边框样式等,以满足设计需求。 7. **代码组织**:在实际项目中,分段控件的逻辑可能封装在...

    ios-简单实用的SegmentView.zip

    本资源名为"ios-简单实用的SegmentView.zip",其内容是一个已经封装好的SegmentView实现,方便开发者直接引入到自己的项目中使用。 SegmentView的基本结构通常包括一个或多个段(Segment),每个段对应一个选项,...

    印刷电路板3624821497.pptx

    2. 封装修改:当标准库中没有所需封装时,可以通过直接编辑、元件制作向导或拷贝修改来创建自定义封装。 通过以上步骤,设计师能够完成从电路图设计到PCB布局的全过程,确保电子产品的电气性能和制造可行性。在设计...

Global site tag (gtag.js) - Google Analytics