如何使用uisegmentcontrol在iphone上添加超过6段图像(How to add more than 6 segments with image on iphone using uise

编程入门 行业动态 更新时间:2024-10-09 16:27:30
如何使用uisegmentcontrol在iphone上添加超过6段图像(How to add more than 6 segments with image on iphone using uisegmentcontrol)

问题是如果我使用文本我可以添加我想要的段,但如果我使用图像意味着我无法在iPhone上添加超过6段。

帮帮我。

UIImage* resetImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* wlwwImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* huImage = [UIImage imageNamed:@"HU_PI_V1"]; UIImage* panImage = [UIImage imageNamed:@"Panning_V1"]; UIImage* disImage = [UIImage imageNamed:@"Distance_V1"]; UIImage* areaImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* clrImage = [UIImage imageNamed:@"Clear_V1"]; UIImage* presetImage = [UIImage imageNamed:@"Presets_V1"]; mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage, nil]; segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [segmentControl addTarget:self action:@selector(whichSegment:) forControlEvents:UIControlEventValueChanged]; [self.view addSubview:segmentControl];

The thing is i can add segments as much as i want if i use text but if i use image means i can not able to add more than 6 segments on iphone.

help me out.

UIImage* resetImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* wlwwImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* huImage = [UIImage imageNamed:@"HU_PI_V1"]; UIImage* panImage = [UIImage imageNamed:@"Panning_V1"]; UIImage* disImage = [UIImage imageNamed:@"Distance_V1"]; UIImage* areaImage = [UIImage imageNamed:@"Reset_V1"]; UIImage* clrImage = [UIImage imageNamed:@"Clear_V1"]; UIImage* presetImage = [UIImage imageNamed:@"Presets_V1"]; mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage, nil]; segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [segmentControl addTarget:self action:@selector(whichSegment:) forControlEvents:UIControlEventValueChanged]; [self.view addSubview:segmentControl];

最满意答案

我尝试相同的代码,它的工作原理 输出: 在此处输入图像描述

码:

UIImage* resetImage = [UIImage imageNamed:@"Image"]; UIImage* wlwwImage = [UIImage imageNamed:@"Image"]; UIImage* huImage = [UIImage imageNamed:@"Image"]; UIImage* panImage = [UIImage imageNamed:@"Image"]; UIImage* disImage = [UIImage imageNamed:@"Image"]; UIImage* areaImage = [UIImage imageNamed:@"Image"]; UIImage* clrImage = [UIImage imageNamed:@"Image"]; UIImage* presetImage = [UIImage imageNamed:@"Image"]; UIImage* presetImage1 = [UIImage imageNamed:@"Image"]; UIImage* presetImage2= [UIImage imageNamed:@"Image"]; UIImage* presetImage3= [UIImage imageNamed:@"Image"]; NSArray *mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage,presetImage1,presetImage2,presetImage3, nil]; UISegmentedControl *segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [self.view addSubview:segmentControl];

下载演示项目 链接


如果您的图片路径无效,那么它将仅显示具有正确图像的片段 在此处输入图像描述

代码(有bug)

// Do any additional setup after loading the view, typically from a nib. UIImage* resetImage = [UIImage imageNamed:@"Image"]; UIImage* wlwwImage = [UIImage imageNamed:@"Image"]; UIImage* huImage = [UIImage imageNamed:@"Image"]; UIImage* panImage = [UIImage imageNamed:@"Image"]; UIImage* disImage = [UIImage imageNamed:@"Image"]; UIImage* areaImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* clrImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage1 = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage2= [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage3= [UIImage imageNamed:@"Image1"]; // wrong image name NSArray *mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage,presetImage1,presetImage2,presetImage3, nil]; UISegmentedControl *segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [self.view addSubview:segmentControl];

I try with same code and it work Output: enter image description here

Code:

UIImage* resetImage = [UIImage imageNamed:@"Image"]; UIImage* wlwwImage = [UIImage imageNamed:@"Image"]; UIImage* huImage = [UIImage imageNamed:@"Image"]; UIImage* panImage = [UIImage imageNamed:@"Image"]; UIImage* disImage = [UIImage imageNamed:@"Image"]; UIImage* areaImage = [UIImage imageNamed:@"Image"]; UIImage* clrImage = [UIImage imageNamed:@"Image"]; UIImage* presetImage = [UIImage imageNamed:@"Image"]; UIImage* presetImage1 = [UIImage imageNamed:@"Image"]; UIImage* presetImage2= [UIImage imageNamed:@"Image"]; UIImage* presetImage3= [UIImage imageNamed:@"Image"]; NSArray *mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage,presetImage1,presetImage2,presetImage3, nil]; UISegmentedControl *segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [self.view addSubview:segmentControl];

Download demo project Link


If your image path is not valid then it will show only segment with correct image enter image description here

Code(with bug)

// Do any additional setup after loading the view, typically from a nib. UIImage* resetImage = [UIImage imageNamed:@"Image"]; UIImage* wlwwImage = [UIImage imageNamed:@"Image"]; UIImage* huImage = [UIImage imageNamed:@"Image"]; UIImage* panImage = [UIImage imageNamed:@"Image"]; UIImage* disImage = [UIImage imageNamed:@"Image"]; UIImage* areaImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* clrImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage1 = [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage2= [UIImage imageNamed:@"Image1"]; // wrong image name UIImage* presetImage3= [UIImage imageNamed:@"Image1"]; // wrong image name NSArray *mySegments = [[NSArray alloc] initWithObjects: wlwwImage,panImage,huImage,disImage,areaImage,resetImage,clrImage,presetImage,presetImage1,presetImage2,presetImage3, nil]; UISegmentedControl *segmentControl = [[UISegmentedControl alloc] initWithItems:mySegments]; CGRect myFrame = CGRectMake(0, 65, 320, 35); segmentControl.frame = myFrame; [self.view addSubview:segmentControl];

更多推荐

本文发布于:2023-08-02 14:27:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1375799.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:如何使用   图像   uisegmentcontrol   image   iphone

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!