`
iaiai
  • 浏览: 2213999 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

纯代码实现UITableViewCell的自定义扩展

 
阅读更多
介绍两种方法
第一种,
简单的增加UITableViewCell一些小功能
例如在cell上面添加一个UILabel。
直接在UITableViewCell的生成方法中实现,代码如下
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *identifier = @"cell";

UITableViewCell  *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil) {
cell = [[[UITableViewCell  alloc]initWithStyle:UITableViewCellStyleDefault   reuseIdentifier:identifier] autorelease];
UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(190, 0, 130, cell.frame.size.height)];
label1.tag = 1;
[cell.contentView addSubview:label3];
[label3 release];
}
UILabel *label3 = (UILabel *)[cell.contentView viewWithTag:1];
label1.text = @"44444";

return cell;
}

第二种,较为正规的写法。
新建一个自定义的继承UITableViewCell的类如NewCell。
在NewCell中增加两个UILabel的属性
代码如下
//NewCell.h
#import

@interface NewCell : UITableViewCell
{
UILabel *_label1;
UILabel *_label2;
}


- (void)setLabel1Text:(NSString *)text1
  label2Text:(NSString *)text2;

@end

//NewCell.m
#import "NewCell.h"

@implementation NewCell

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
    if (self) {
_label1 = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 160, self.frame.size.height)];
_label1.text = @"111111111";
[self.contentView addSubview:_label1];

_label2 = [[UILabel alloc] initWithFrame:CGRectMake(160, 0, 160, self.frame.size.height)];
_label2.text = @"111111111";
[self.contentView addSubview:_label2];

    }
    return self;
}

- (void)setLabel1Text:(NSString *)text1
  label2Text:(NSString *)text2
{
_label1.text = text1;
_label2.text = text2;
}

- (void)dealloc
{
[_label1 release];
[_label2 release];
[super dealloc];
}

@end

//UITableViewCell的生成方法
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *identifier = @"cell";

NewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil) {
cell = [[[NewCell alloc]initWithStyle:UITableViewCellStyleDefault   reuseIdentifier:identifier] autorelease];
}

[cell setLabel1Text:@"222222222" label2Text:@"333333333"];

return cell;
}
分享到:
评论

相关推荐

    自定义UITableViewCell。实现各种样式的表格输入界面ios源代码设计资料

    5. **自定义行为**:如果需要,还可以扩展`UITableViewCell`的子类,添加自定义的行为和逻辑。例如,可以添加计算或验证方法,或者实现特定的动画效果。 关于InAppSettingsKit,这是一个开源库,用于在应用内部管理...

    18个ios项目源代码 各种布局控件使用及扩展视图自定义UITableViewCell

    18个ios项目源代码各种布局控件使用及扩展视图自定义UITableViewCell。 实现各种样式的表格输入界面、自定义TabBar的文字、颜色和图片加箭头、列表个性化列表项、IOS欢迎界面等。 18个ios项目源代码各种布局控件使用...

    IOS源码应用Demo-UITableViewCell 视图扩展.zip

    这个" IOS源码应用Demo-UITableViewCell 视图扩展.zip "很可能是为了帮助开发者深入理解如何自定义UITableViewCell,以便实现更丰富的用户界面和交互效果。在毕业设计或论文中,这样的实践示例能帮助学生更好地阐述...

    IOS应用源码——UITableViewCell 视图扩展.zip

    在iOS应用设计中,对UITableViewCell的自定义扩展是非常常见的需求,它可以帮助开发者实现个性化的设计,提高用户体验。 首先,我们来看一下UITableViewCell的基本结构。默认情况下,UITableViewCell包含一个文本...

    ios源码之UITableViewCell 视图扩展Demo.rar

    这个Demo项目“ios源码之UITableViewCell 视图扩展Demo”显然是为了展示如何通过自定义扩展来增强UITableViewCell的功能,使其能更好地适应各种复杂的UI需求。下面我们将详细探讨这个主题。 1. **UITableViewCell...

    ios项目源代码 各种布局控件使用及扩展视图自定义UITableViewCell等源码合集.rar

    ios项目源代码 各种布局控件使用及扩展视图自定义UITableViewCell等源码合集: DTCoreText-1.6.10在UITextView上实现十分丰富的文字效果 ios三级展开列表TQMultistageTableView_10802 ios个性化每个...

    IOS应用源码之自定义UITableViewCell。实现各种样式的表格输入界面.zip

    四、自定义扩展性 在实际项目中,你可能需要根据业务需求进一步扩展单元格的功能,例如: 1. 动画效果:添加进入、离开或点击时的动画,提升用户体验。 2. 加载状态:显示加载指示器,如`UIActivityIndicatorView`...

    IOS开发源码-布局控件使用自定义UITableViewCell 导航及底部菜单后台获取功能等ISO代码合集.zip

    IOS开发源码-布局控件使用自定义UITableViewCell 导航及底部菜单后台获取功能等ISO代码合集: ios三级展开列表TQMultistageTableView_10802 ios个性化每个tableMHNibTableViewCell ios分页的滚动视图 IOS可扩展底部...

    IOS布局控件使用自定义UITableViewCell 欢迎界面后台获取功能等项目设计IOS源码合集.zip

    利用 Core Text 实现代码根据语法高亮显示效果 利用CoreText展示连接、电话、邮箱 后台获取功能 导航及底部菜单 自定义Tab Bar的文字、颜色和图片加箭头 自定义UITableViewCell。实现各种样式的表格输入界面 高仿新...

    ios-纯代码实现多级菜单下拉选项.zip

    总的来说,“ios-纯代码实现多级菜单下拉选项.zip”项目提供了一个基础的实现方案,开发者可以根据实际需求对其进行扩展和定制。理解并掌握这种实现方式,对于iOS应用的界面设计和用户体验提升有着重要的作用。

    用代码自定义cell

    本教程将详细介绍如何通过代码自定义UITableViewCell,以实现更丰富的界面效果。 首先,我们需要创建一个自定义的UITableViewCell子类。在Swift中,你可以这样做: ```swift import UIKit class ...

    swift-利用原始UITableViewcell强大的自适应性能改造UITableViewcell

    7. 布局扩展:如果原始的UITableViewCell样式仍无法满足需求,可以考虑使用UIStackView或者自定义UIComponent来增强布局能力,但仍应尽量利用现有系统组件的自适应特性,避免过度自定义。 通过以上方法,我们可以在...

    ios-UITableViewCell折叠效果.zip

    我们可以为UITableViewCell添加一个扩展,包含一个BOOL变量来跟踪cell的状态(展开或折叠),并实现`touchesBegan(_:with:)`和`touchesEnded(_:with:)`方法。当用户点击cell时,切换该状态,并调用UITableView的`...

    绘制UITableViewCell

    1. 自定义的UITableViewCell子类,包含自定义绘制的代码。 2. UITableViewController或UIViewController,设置UITableView的数据源和代理,以及在`tableView(_:cellForRowAtIndexPath:)`中加载自定义单元格。 3. ...

    ios-微博项目纯代码.zip

    5. **实现自定义Cell**:在展示大量数据时,如微博列表,自定义UITableViewCell可以提高界面的可读性和美观度。开发者可能根据业务需求,设计并实现了带有头像、昵称、时间戳、内容等元素的自定义Cell,并且可能还...

    ios-自定义.zip

    在iOS开发中,自定义是实现独特用户体验和高效代码组织的关键。这个名为“ios-自定义.zip”的压缩包很可能包含了开发者在iOS应用中创建自定义组件、布局和框架的示例代码或资源。下面我们将深入探讨这个主题,涵盖多...

    纯代码定义比用图片还炫的tableview界面

    此外,我们还可以通过扩展UITableViewCell来添加手势识别,实现更多交互。 总之,通过纯代码定义的UITableView界面不仅可以实现基本的列表展示,还能创造出丰富的视觉效果和交互体验。这需要开发者对UITableView的...

    自定义tableview实现手势单元_Objective-C_下载.zip

    在自定义的UITableViewCell类中实现`handleCellTap:`方法,这里可以进行任何你想在单元格被点击时执行的操作,例如跳转页面、显示详情等。 ```objc - (void)handleCellTap:(UITapGestureRecognizer *)sender { ...

    UItableView多cell实现

    在实际开发中,我们可能会为每种cell创建一个对应的UITableViewCell子类,以便自定义布局和交互。然而,当cell种类增多时,这种做法会导致代码组织混乱,类的数量急剧增加,不利于后期的维护和扩展。 为了解决这个...

Global site tag (gtag.js) - Google Analytics