1 IDSGenderLeviNamedView 的实现效果
2 类的封装方法:
IDSGenderLeviNamedView.h
@interface IDSGenderLeviNamedView : UIView
@property (nonatomic, strong) UILabel *ageLabel;
@property (nonatomic, strong) UIImageView *genderImageView;
- (instancetype)initWithGender:(NSInteger)gender age:(NSInteger)age;
- (void)gender:(NSInteger)gender age:(NSInteger)age;
@end
IDSGenderLeviNamedView.m
#import "IDSGenderLeviNamedView.h"
@implementation IDSGenderLeviNamedView
#pragma mark - 初始化需求函数
- (instancetype)initWithGender:(NSInteger)gender age:(NSInteger)age
{
if (self = [superinit]) {
self.genderImageView = [[UIImageViewalloc] initWithFrame:CGRectMake(3, 2, 10, 10)];
if (gender == 0) {
self.genderImageView.image = IDSImageNamed(@"img_yiqiwan_man");
self.backgroundColor = NF_Color_C32;
}
else {
self.genderImageView.image = IDSImageNamed(@"img_yiqiwan_woman");
self.backgroundColor = NF_Color_C30;
}
self.genderImageView.contentMode = UIViewContentModeScaleAspectFill;
[selfaddSubview:self.genderImageView];
self.ageLabel = [[UILabelalloc] init];
self.ageLabel.font = [UIFontsystemFontOfSize:Near_Final_Font_T1];
self.ageLabel.textColor = NF_Color_C1;
if (age) {
self.ageLabel.text = [NSStringstringWithFormat:@"%ld",age];
self.ageLabel.frame = CGRectMake(CGRectGetMaxX(self.genderImageView.frame)+1, 0, 0, 0);
self.ageLabel.font = [UIFontsystemFontOfSize:Near_Final_Font_T1];
self.ageLabel.textColor = NF_Color_C1;
[self.ageLabelsizeToFit];
self.ageLabel.centerY = self.genderImageView.centerY;//测试一下可行不?
[selfaddSubview:self.ageLabel];
self.frame = CGRectMake(0, 0, CGRectGetMaxX(self.ageLabel.frame)+3, 14);
}
else {
self.frame = CGRectMake(0, 0, CGRectGetMaxX(self.genderImageView.frame)+3, 14);
}
self.layer.cornerRadius = 3.0f;
self.layer.masksToBounds = YES;
self.clipsToBounds = YES;
}
returnself;
}
- (void)gender:(NSInteger)gender age:(NSInteger)age
{
self.genderImageView.frame = CGRectMake(3, 2, 10, 10);
if (gender == 0) {
self.genderImageView.image = IDSImageNamed(@"img_yiqiwan_man");
self.backgroundColor = NF_Color_C32;
}
else {
self.genderImageView.image = IDSImageNamed(@"img_yiqiwan_woman");
self.backgroundColor = NF_Color_C30;
}
self.genderImageView.contentMode = UIViewContentModeScaleAspectFill;
self.ageLabel.font = [UIFontsystemFontOfSize:Near_Final_Font_T1];
self.ageLabel.textColor = NF_Color_C1;
if (age) {
self.ageLabel.hidden = NO;
self.ageLabel.text = [NSStringstringWithFormat:@"%ld",age];
self.ageLabel.frame = CGRectMake(CGRectGetMaxX(self.genderImageView.frame)+1, 0, 0, 0);
self.ageLabel.font = [UIFontsystemFontOfSize:Near_Final_Font_T1];
self.ageLabel.textColor = NF_Color_C1;
[self.ageLabelsizeToFit];
self.ageLabel.centerY = self.genderImageView.centerY;//测试一下可行不?
self.frame = CGRectMake(0, 0, CGRectGetMaxX(self.ageLabel.frame)+3, 14);
}
else {
self.ageLabel.hidden = YES;
self.frame = CGRectMake(0, 0, CGRectGetMaxX(self.genderImageView.frame)+3, 14);
}
self.layer.cornerRadius = 3.0f;
self.layer.masksToBounds = YES;
self.clipsToBounds = YES;
}
@end
- OVER
- [Audio processing] 数据集生成 & 性别年龄分类训练 Python
1.重命名,Python中文路径各种错误,所以需要先将所有文件的路径名全都改成中文.用的是MAC系统,所以WIN下的命令行批处理没法解决,所以用C来完成 // Created by Carl on 1 ...
- 星星的模块封装类 IDSStarsScoreView
1 IDSStarsScoreView 的实现效果 2 类的封装方法: <声明文件> // // IDSStarsScoreView.h // Near // // ...
- 基于安卓高仿how-old.net实现人脸识别估算年龄与性别
前几段微软推出的大数据人脸识别年龄应用how-old.net在微博火了一把,它可以通过照片快速获得照片上人物的年龄,系统会对瞳孔.眼角.鼻子等27个“面部地标点"展开分析,进而得出你的“颜龄 ...
- 虚基类——(1)定义人员类Person: 公有成员:姓名(Name); 保护成员:性别(Gender),年龄(Age); 构造函数和析构函数
题目描述: (1)定义人员类Person: 公有成员:姓名(Name): 保护成员:性别(Gender),年龄(Age): 构造函数和析构函数 (2) 从人员类Person派生学生记录类Student ...
- 内置函数 hashlib configparser logging 模块 C/S B/S架构
1.内置函数 # 内置的方法有很多 # 不一定全都在object中 # class Classes: # def __init__(self,name): # self.name = name # s ...
- 常用模块 - openpyxl模块
一.简介 xlrd/xlwt 主要是针对Office 2003或更早版本的XLS文件格式 缺点:不支持XLSX文件格式 OpenPyXL 能读能写能修改 缺点:不支持XLS Microsoft Exc ...
- python----openpyxl模块
openpyxl 模块 1.openpyxl的写 from openpyxl import Workbook wb = Workbook() # 方式一: 默认创建sheet在最后 wb1 = wb. ...
- python面向编程: 常用模块补充与面向对象
一.常用模块 1.模块 的用用法 模块的相互导入 绝对导入 从sys.path (项目根目录)开始的完整路径 相对导入 是指相对于当前正在执行的文件开始的路径 只能用于包内模块相互间导入 不能超过顶层 ...
- 操作excel--xlwt/xlrd/xlutils模块
一.写Excel (导入xlwt模块)需求:只要你传入一个表名,就能把所有的数据导入出来写入excel,字段名是excel的表头分析: 1.要动态获取到表的字段 cur.description能获取到 ...
随机推荐
- 在C++ Builder6上使用Boost正则表达式库
本文关键词:正则表达式 c++ python 软件 正则表达式是一种模式匹配形式,它通常用在处理的文本程序中.比如我们经常使用的grep工具,还是perl语言都使用了正则表达式. 正则表达式是一种模式 ...
- Android SDK location should not contain whitespace, as this cause problems with NDK tools
解决方案一: The easiest solution is to move the SDK somewhere else, where there is no space or other whit ...
- ssh基础(1)
1.链接远程 命令:ssh root@1.1.1.1 2.执行远程脚本 命令:ssh root@1.1.1.1 /data/demo/test.sh > 111.txt (执行远程的tes ...
- cordova打包之android应用签名
原文:cordova打包之android应用签名 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/mate_ge/article/details/78 ...
- C#委托五(自定义事件)
事件: "在发生其他类或对象关注的事情时,类或对象可以通过事件通知他们.发送(或引发)事件的类称为"发行者",接受(或处理)事件的类称为"订户".&q ...
- Leetcode 268 Missing Number 位运算
题意:先将0, 1, 2, ..., n放入数组,然后去掉其中一个值,找到那个值. 这题与singe number 是一个类型,变形的地方就是首先需要将0, 1, 2, ..., n再次放入这个数组, ...
- 在VS2005中设置WPF中自定义按钮的事件
原文:在VS2005中设置WPF中自定义按钮的事件 上篇讲了如何在Blend中绘制圆角矩形(http://blog.csdn.net/johnsuna/archive/2007/08/13/17407 ...
- 探索jquery方法中empty,remove与detach的区别
最近一直疑惑此三种方法的具体区别在于何处,随即想弄明白其具体的区别,看了一些说明,也依照官方文档,终于把这三个方法弄明白了,果然功夫不负有心人,继续努力. 上正文,先简单介绍下这三种方法 .empty ...
- 中国新超算彻底告别进口CPU 国产芯片已可与国外抗衡
日前,飞腾已经完成FT-2000plus服务器CPU的研制工作,飞腾公司的合作伙伴正在积极研发相应的整机产品.FT-2000plus这款芯片是以FT2000为基础的改进版本,虽然在单核性能上和Inte ...
- HDU 5073 Galaxy(Anshan 2014)(数学推导,贪婪)
Galaxy Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others) Total S ...