IOS 纯代码添加 Button Image Label 添加到自定义View中
2017-02-18 15:21
495 查看
@interface ViewController () /**获取.plist数据*/ @property (nonatomic,strong) NSArray *apps; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //九宫格的总列数 int totalColumns=5; //1.1个格子的尺寸 CGFloat appW=50; CGFloat appH=60; //2.计算间隙 =(控制器view的宽度 -5*应用宽度)/应用宽度+1 CGFloat margin=(self.view.frame.size.width-totalColumns*appW)/(totalColumns+1); //3.要的应用个数创建对应的格子 for (int index=0; index<self.apps.count; index++) { //3.1 创建1个格子 UIView *appView=[[UIView alloc]init]; //设置背景色 appView.backgroundColor=[UIColor whiteColor]; //3.2计算行号和列号 int row =index /totalColumns; int col =index % totalColumns; CGFloat appX =margin+ col*(appW + margin); CGFloat appY =margin+ row*(appH + margin); appView.frame=CGRectMake(appX, appY, appW, appH); //3.3添加格子到控制器的View [self.view addSubview:appView]; //3.4添加 内部的小控件 //取出index位置对应的应用信息 NSDictionary *appInfo=self.apps[index]; //3.4.1添加图片 UIImageView *iconView=[[UIImageView alloc]init]; CGFloat iconW=35; CGFloat iconH=35; CGFloat iconX=(appW-iconW)*0.5; CGFloat iconY=0; iconView.frame=CGRectMake(iconX, iconY, iconW, iconH); //iconView.backgroundColor=[UIColor grayColor]; iconView.image=[UIImage imageNamed:appInfo[@"icon"]]; [appView addSubview:iconView]; //3.4.2 添加名字 UILabel *nameLabel=[[UILabel alloc]init]; CGFloat namgeX=0; CGFloat nameY=iconY+iconH; CGFloat nameW=appW; CGFloat nameH=20; nameLabel.frame=CGRectMake(namgeX, nameY, nameW, nameH); nameLabel.backgroundColor=[UIColor greenColor]; nameLabel.text=appInfo[@"name"]; nameLabel.font=[UIFont systemFontOfSize:8];//设置字体大小 nameLabel.textAlignment=NSTextAlignmentCenter;//字体居中 [appView addSubview:nameLabel]; //3.4.3添加下载按钮 UIButton *downloadBtn=[[UIButton alloc]init]; CGFloat downloadX=5; CGFloat downloadY=nameY+nameH; CGFloat downloadW=appW-2*downloadX; CGFloat downloadH=20; downloadBtn.frame=CGRectMake(downloadX, downloadY, downloadW, downloadH); // downloadBtn.backgroundColor=[UIColor brownColor]; //设置按钮图片,普通状态 // downloadBtn.imageView.image=[UIImage imageNamed:@"buttongren"]; UIImage *normalImage=[UIImage imageNamed:@"buttongreen"]; [downloadBtn setBackgroundImage:normalImage forState:UIControlStateNormal]; //设置按钮图片,高亮状态 UIImage *highighedlImage=[UIImage imageNamed:@"buttongreen_highlighted"]; [downloadBtn setBackgroundImage:highighedlImage forState:UIControlStateHighlighted]; //设置按钮文字 //downloadBtn.titleLabel.text=@"下载"; [downloadBtn setTitle:@"下载" forState:UIControlStateNormal]; [downloadBtn setTitle:@"更新" forState:UIControlStateHighlighted]; //设置按钮文字的大小 downloadBtn.titleLabel.font=[UIFont systemFontOfSize:8]; [appView addSubview:downloadBtn]; } }
View Code
相关文章推荐
- IOS中Label,imageView,view,button怎么添加边框?
- Objective-c 纯代码写简易界面,(1*view,1*label,3 * button,1*imageview,1*animation)
- iOS 为自定义tableView添加button点击事件后获取其序号
- 为 自定义 Cell 上的控件(Label、ImageView)添加手势
- (多码伤眼,伤身,伤脑,勿入)代码写界面(3*label,2*textFIeld,1*slider,2*UISwitch,1*segmentedController,1*button,1*AlertSheet,1*AlertView)
- 转载 :Android中ImageButton自定义按钮的按下效果的代码实现方法,附网上2种经典解决方法。
- iOS开发 自定义tableView样式(使用代码/使用Interface Builder)、分组显示、给TableView增加索引、给TableView增加SearchBariOS开发 自定义tab
- Android中ImageButton自定义按钮的按下效果的代码实现方法,附网上2种经典解决方法。
- Android ImageButton自定义按钮的按下效果的代码实现方法
- iOS学习基础学习之动态添加Button和监听UIAlertView按钮
- iOS为imageView添加图片实现动画
- ios UIImagePickerController 添加一个自定义的view。
- iOS创建不带nib文件的工程之四--在自定义view上添加按钮
- iOS为imageView添加图片实现动画
- Android ImageButton自定义按钮的按下效果的代码实现方法分享
- iOS中Navigation中添加自定义Button等UIView
- iOS学习之动态添加Button和监听UIAlertView按钮
- IOS学习之动态添加Button和监听UIAlertView按钮
- Android中ImageButton自定义按钮的按下效果的代码实现方法,附网上2种经典解决方法
- Android中ImageButton自定义按钮的按下效果的代码实现方法