博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS开发基础-九宫格坐标(4)
阅读量:5276 次
发布时间:2019-06-14

本文共 1848 字,大约阅读时间需要 6 分钟。

  对的代码进行进一步优化。

  新建一个 UIView 的子类,并命名为 WJQAppView ,将 appxib.xib 中的 UIView 对象与新建的视图类进行关联。

   WJQAppView 类中声明3个 IBOutlet 属性,与 appxib.xib 中的视图对象包含的 UIImageView 、 UILabel 和 UIButton 建立连接。 WJQAppView 头文件代码如下所示:

1 //WJQAppView.h2 @interface WJQAppView : UIView3 @property (weak, nonatomic) IBOutlet UIImageView *appImage;4 @property (weak, nonatomic) IBOutlet UILabel *appLabel;5 @property (weak, nonatomic) IBOutlet UIButton *appButton;6 @end

  最后,修改 ViewController.m 中的 viewDidLoad 方法:

1 //ViewController.m 2 - (void)viewDidLoad { 3     [super viewDidLoad]; 4      5     int totalColumn = 3;        //3列 6     CGFloat margin = (self.view.frame.size.width - totalColumn*appViewWidth) / (totalColumn + 1); 7     int count = self.apps.count; 8     NSLog(@"%d", count); 9     10     for (int i = 0; i < count; i++) {11         int row = i/totalColumn;        //行号,从0开始12         int column = i%totalColumn;     //列号,从0开始13         CGFloat appViewX = margin + (margin + appViewWidth) * column;       //子视图的X坐标14         CGFloat appViewY = margin + (margin + appViewHeight) * row;      //子视图的Y坐标15         WJQAppInfo *appInfo = self.apps[i];16         17         //创建UIView控件18         NSArray *appArray = [[NSBundle mainBundle] loadNibNamed:@"appxib" owner:nil options:nil];19         WJQAppView *appView = [appArray firstObject];20         appView.frame = CGRectMake(appViewX, appViewY, appViewWidth, appViewHeight);21         appView.appImage.image = appInfo.image;      //设置图片22         appView.appLabel.text = appInfo.desc;        //设置名称23         appView.appButton.tag = i;                   //设置按钮的序号24         [appView.appButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside];25         26         [self.view addSubview:appView];27     }28 }

 

参考博客:

实例代码: 

转载于:https://www.cnblogs.com/wjq-Law/p/5127913.html

你可能感兴趣的文章
工作中随感
查看>>
【freemarker】渲染列表一系列操作
查看>>
BZOJ1951 [Sdoi2010]古代猪文 【费马小定理 + Lucas定理 + 中国剩余定理 + 逆元递推 + 扩展欧几里得】...
查看>>
PHP 数据库访问
查看>>
PHP起点 - PHP常量
查看>>
TopHat
查看>>
P1351 联合权值
查看>>
Oracle EBS PO 接受入库
查看>>
vue-manage-system 后台管理系统开发总结
查看>>
eclipse乱码解决方法
查看>>
JS与OC中的方法相互调用
查看>>
ASP.NET Core开发-使用Nancy框架
查看>>
沧海一声笑,移动应用的CRASH原因我找到! --记最新款数字化測试“星云測试“的使用攻略...
查看>>
常见浏览器兼容性问题与解决方式
查看>>
推荐系统依据近期浏览进行推荐
查看>>
工厂模式IDAL具体解释
查看>>
UVA - 673 Parentheses Balance
查看>>
数据库编程规范
查看>>
如何修改eclipse里面Android虚拟机的存放路径
查看>>
爬虫作业
查看>>