IOS 读取xib里的子控件
interface ViewController ()
/**获取.plist数据*/
@property (nonatomic,strong) NSArray *aps; @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; //九宫格的总列数
int totalColumns=; //1.1个格子的尺寸
CGFloat appW=;
CGFloat appH=; //2.计算间隙 =(控制器view的宽度 -5*应用宽度)/应用宽度+1
CGFloat marginX=(self.view.frame.size.width-totalColumns*appW)/(totalColumns+);
CGFloat marginY=;
//3.要的应用个数创建对应的格子 for (int index=; index<self.aps.count; index++)
{
NSBundle *bundle=[NSBundle mainBundle];
//读取xib文件(会创建AppsView.xib中的描述的所有对象。并且按顺序放到数组中返回)
NSArray *objs=[bundle loadNibNamed:@"AppsView" owner:nil options:nil];
UIView *appView=[objs lastObject]; //添加view
[self.view addSubview:appView]; //设置frame
int row=index/ totalColumns; int col=index% totalColumns; //计算x和y CGFloat appx=marginX+col*(appW+marginX);
CGFloat appY=marginY+row *(appH + marginY);
appView.frame=CGRectMake(appx, appY, appW, appH);
//设置数据
Apps *app=self.aps[index]; //设置图片(xib中的appView取子控件 UIImageView) // UIImageView *iconView=appView.subviews[0]; //方式1
UIImageView *iconView=(UIImageView *)[appView viewWithTag:];//方式2
iconView.image=[UIImage imageNamed:app.icon]; //设置名称(xib中的appView取子控件 UILabel) // UILabel *nameLabel=appView.subviews[1];//方式1 UILabel *nameLabel=(UILabel *)[appView viewWithTag:];//方式2
nameLabel.text=app.name;
} }
IOS 读取xib里的子控件的更多相关文章
- iOS 设置视图半透明而子控件不透明
用一张半透明的图片做背景 使用colorWithWhite:alpha:方法 white后面的参数表示灰度,从0-1之间表示从黑到白的变化,alpha就是你想调整的透明度 bgView.backgr ...
- WPF silverlight获取子控件(获取DataTemplate里的子控件)
public static class VisualTreeExtensions { /// <summary> /// 获取父节点控件 /// </summary> /// ...
- iOS开发实现UIView随着子控件的高度的变化而变化
例子 其实看完上面的叙述,你会思考,到底什么情况下,一个UIView需要只设置坐标不设置大小呢?其实这种场景相当普遍.比如,我们常常会碰到,一个View中有两个Label,两个Label的高度均和内容 ...
- 五种情况下会刷新控件状态(刷新所有子FWinControls的显示)——从DFM读取数据时、新增加子控件时、重新创建当前控件的句柄时、设置父控件时、显示状态被改变时
五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整 ...
- iOS: 获取UITableViewCell上添加的子控件对应的cell
一.简单介绍 UITableViewCell是UITableView的核心部分,我们在开发中因为功能的扩展经常需要自定义,以便在其上面添加子控件,例如button.label等.添加后获取这些子控件的 ...
- 2、IOS开发--iPad之仿制QQ空间 (初始化HomeViewController子控件视图)
1.先初始化侧边的duck,效果图: 实现步骤: 2.然后初始化BottomMenu,效果: 步骤: 其实到这里,会出现一个小bug,那就是: 子控件的位置移高了,主要原因是: 逻辑分析图: 问题解决 ...
- iOS开发小技巧--UIScrollView内部子控件添加约束的注意点
注意:用UIScrollView时布局子控件的时候,不要相对于UIScrollView来添加约束,这样做不是设置子控件的位置,反而是设置了UIScrollView的contentSize 子控件的尺寸 ...
- 记录下帮助一位网友解决的关于android子控件的onTouch或onClick和父OnTouch 冲突的问题。
前三天收到位网友的私信求助,问题大概如标题所示.具体是下面的情况,个人感觉,这个问题挺有趣,也会在实际项目开发中很常见.不想看前奏的请直接跳至解决方法. 问题原型: 父控件是自定义的 LinearLa ...
- ParentWindow属性及其一系列函数的作用——适合于那些不需要父控件管理内存释放的子控件
TWinControl = class(TControl) property ParentWindow: HWnd read FParentWindow write SetParentWindow; ...
随机推荐
- Excel 开发备忘
1.装完读取插件才可以对EXCEL读取 Excel 2010 读取数据插件 https://www.microsoft.com/zh-CN/download/details.aspx?id=13255 ...
- mybatis mapper问题列表
id出现两次 2018-11-14 16:15:03.833 DEBUG 41432 --- [ main] c.a.i.o.d.mapper.DatvMapper.insert ...
- bean copy
最初采用apache beanutils,性能很低.后来转为hutool,但不能复制指定格式的日期,所以采用性能很高的com.github.yangtu222.BeanUtils 它已经实现了 cop ...
- mc03_IntelliJ IDEA配置github
配置本地git仓库 首先配置一个本地的git仓库,熟悉一下git上传文件到github的过程,具体操作参考 mc02_配置本地git仓库并上传到github IntelliJ IDEA与github的 ...
- 转 python 的常用函数replace, split(),enumerate() 函数
1.execmd = "su - " + ou + " -c 'sqlplus / as sysdba << EOF\n " + execmd3 + ...
- Unity Collab
window-services下面打开面板,这里有开关(或者你也可以进入后台项目管理页面删除项目). 最大的圈是项目名称. 然后就打开了下面页面,关上就可以了.
- Map集合练习之对字符串中字母出现的次数求和
不多说,直接上干货! 代码需求 如有这么一个字符串 String str = "fdg+avAdc bs5dDa9c-dfs"; MapTest.java package zhou ...
- 使用taobao的npm镜像源,同时安装nrm镜像工具
身在天朝.你面临的一个问题就是网络 安装好Nodejs 控制台 执行 npm config set registry https://registry.npm.taobao.org //配置指向源 然 ...
- netty之==线程模型
1.1 netty线程模型本质遵循了Reactor的基础线程模型,所以得先介绍Reactor模型 1.2 Reactor模型 无论是C++还是Java编写的网络框架,大多数都是基于Reactor模 ...
- java实现汉字转为拼音
java实现汉字转为拼音: 1.需要导入pinyin4j.jar package com.loo.pinyin; import net.sourceforge.pinyin4j.PinyinHelpe ...