iOS 中自定义TableViewCell方法

自定义cell时需要继承UITableViewCell.

举例:ZLSchoolListTableCell继承UITableViewCell

ZLSchoolListTableCell.h文件

#import <UIKit/UIKit.h>

@class SchoolModel(模型);

@interface ZLSchoolListTableCell : UITableViewCell

+(instancetype)SchoolListWithTableView:(UITableView*)tableView;

@property(nonatomic,strong)SchoolModel *Zlschool;(模型属性)

@end

ZLSchoolListTableCell.m文件

#import "ZLSchoolListTableCell.h"

#import "School.h"

@interface ZLSchoolListTableCell()

/** 图标 */

@property (nonatomic, weak) UIImageView *iconView;

/** 中文名 */

@property (nonatomic, weak) UILabel *ChineseLabel;

@end

@implementation ZLSchoolListTableCell

+ (instancetype)SchoolListWithTableView:(UITableView *)tableView

{

static NSString *ID = @"ZLSchoolListTableCell";

ZLSchoolListTableCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];

if (cell == nil) {

cell = [[ZLSchoolListTableCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:ID];

}

return cell;

}

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier

{

self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];

if (self) {

[self setSubwiews];

}

return self;

}

- (void)setSubwiews{

/** 图标 */

UIImageView *iconView = [[UIImageView alloc] init];

iconView.userInteractionEnabled = YES;

[self.contentView addSubview:iconView];

self.iconView = iconView;

/** 中文名 */

UILabel *nameLabel = [[UILabel alloc] init];

nameLabel.textColor = IWTextColorTitle;

nameLabel.font = IWTextFont16;

[self.contentView addSubview:nameLabel];

self.ChineseLabel = nameLabel;

}

- (void)setZlschool:(School *)Zlschool{

_Zlschool = Zlschool;

[self settingData];(设置数据)

[self setSubwiewsFrame];(设置frame)

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

ZLSchoolListTableCell *cell = [ZLSchoolListTableCell SchoolListWithTableView:tableView];

SchoolModel*school =self.SChoolArry[indexPath.row];

cell.Zlschool =school;

return cell;

}

时间: 2024-10-13 09:38:41

iOS 中自定义TableViewCell方法的相关文章

ios中集合遍历方法的比较和技巧

本文原文发表自我的[自建博客],cnblogs同步发表,格式未经调整,内容以原博客为准 我是前言 集合的遍历操作是开发中最常见的操作之一,从C语言经典的for循环到利用多核cpu的优势进行遍历,开发中ios有若干集合遍历方法,本文通过研究和测试比较了各个操作方法的效率和优略势,并总结几个使用集合遍历时的小技巧. ios中常用的遍历运算方法 遍历的目的是获取集合中的某个对象或执行某个操作,所以能满足这个条件的方法都可以作为备选: 经典for循环 for in (NSFastEnumeration)

iOS中 自定义cell分割线/分割线偏移 韩俊强的博客

在项目开发中我们会常常遇到tableView 的cell分割线显示不全,左边会空出一截像素,更有甚者想改变系统的分割线,并且只要上下分割线的一个等等需求,今天重点解决以上需求,仅供参考: 每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 1.cell 分割线不全: 解决方案1: 补全分割线 -(void)viewDidLayoutSubviews { if ([_listTableView respondsToSelector:@selector(setSep

iOS中自定义UIView(用接口获取Lable和TextFile中的值)

NSArray *arrayText = @[@"用户名",@"密码",@"确认密码",@"手机号",@"邮箱"]; NSArray *placeholders = @[@"请输入用户名",@"请输入密码",@"请确认密码",@"请输入手机号",@"请输入邮箱"]; NSInteger y = 30; for

分享iOS中的sizeToFit()方法的使用心得

第一次写技术博客,之前没有写,主要因为认为自己对iOS技术还没有研究的那么深,怕写出来误人子弟.第二个,也是自己比较懒吧.为了督促自己,也是为了和更多的iOS开发爱好者一起交流和共同进步,绝对以后有什么心得,都会分享.(毕竟稍后等于永不)同时也希望大家积极指出我的错误和不完整的地方. 好,接下我们进入正题: sizeToFit()使用心得: 很多的初学者,包括我在内,当初在学习的时候,特别纠结什么时候用这个sizeToFit(). 下面我就来分享一下我的一些使用心得. 一.我们先来看看官方文档对

iOS 中可变参数方法的声明和实现

// NS_REQUIRES_NIL_TERMINATION, 用于编译时非nil结尾的检查 - (void)mutableArgumentsFunction:(NSString *)arg1, ... NS_REQUIRES_NIL_TERMINATION { // 定义一个指向可选参数列表的指针 va_list args; // 获取第一个可选参数的地址,此时参数列表指针指向函数参数列表中的第一个可选参数 va_start(args, arg1); if(arg1) { // 遍历参数列表中

C#中自定义扩展方法

在C#中,我们在不写子类的情况下,可以为类增加扩展方法,前提的被扩展的类不能使静态类. 步骤如下:   定义一个静态 类以包含扩展方法.该类必须对客户端代码可见. 有关可访问性规则的更多信息,请参见 访问修饰符(C# 编程指南). 将该扩展方法实现为静态方法,并使其至少具有与包含类相同的可见性. 该方法的第一个参数指定方法所操作的类型:该参数必须以 this 修饰符开头. 在调用代码中,添加一条 using 指令以指定包含扩展方法类的 命名空间. 按照与调用类型上的实例方法一样的方式调用扩展方法

iOS中 自定义cell升级版 (高级)

接上次分享的自定义cell进行了优化:http://blog.csdn.net/qq_31810357/article/details/49611255 指定根视图: self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:[[RootTableViewController alloc] initWithStyle:UITableViewStylePlain]]; Ro

Swift中自定义打印方法

// 1.获取打印所在的文件 let file = ( #file as NSString).lastPathComponent // 2.获取打印所在的方法 let funcName = #function // 3.获取打印所在的行数 let line = #line Swift自定义的打印方法:

4. iOS中常用演示方法以及利弊

- (void)delay1 { // 延迟执行不要用sleep,坏处:卡住当前线程 [NSThread sleepForTimeInterval:3]; NSLog(@"-----下载图片-----"); } - (void)delay2 { // 一旦定制好延迟任务后,不会卡主当前线程(延时任务在哪条线程执行取决于当前代码在何处调用) [self performSelector:@selector(download:) withObject:@"http://555.jp