[ios]tableview

tableView

 

日期2012-10-23

如果需要通过 界面 获取 当前数据信息的话

则无法使用viewWithTag (因为tag要用于作为作为数据和内容的标记)

比如需要实现cell中有一个 button 根据不同的cell行执行不同的操作。

那么 需要在每次给出cell的术后对button的 tag赋值

如果不能使用viewWithTag 则使用custom一个子类 并ib它的属性到cell 作为操作用。

[其实也不是完全不能使用viewWithTag 比如- -button用正数 其他用负数。。。。但是如果是2个控件要使用呢? 那就变成复杂的数学问题了。。所以还是使用 custom 一个子类吧]

=========================

 

需要实现2个协议

datagate:控制tableView如何显示

DataSource:控制数据如何显示在cell

 

tableViewVC 动态下。

在xcode中storyboard 写的原型cell

会在第一次进入tableCell池中判断是否有cell

如果没有则自创建一个自己 并入池

这是为什么我们可以再代码中 直接通过 

dequeueReusableCellWithIdentifier:@"原型cell的indentifier"

 

tableView的自定义cell

找到两个方法

1.通过xib加载布局 再操作。[更优秀,可重复用]

2.直接在tableViewVC上设置原型cell为Custom,通过属性操作[更简单]

3.直接在tableViewVC上设置原型cell为Custom,通过viewWithTag操作[最简单]

 

1.通过xib加载布局 再操作。

自己写一个xib然后通过来

 

NSArray * array=[[NSBundle mainBundle]loadNibNamed:@"TestCell" owner:self options:nil];

来加载出view数组。再获取出自己的cell;

注意,自己写的cell需要 让他的类别为自己写的TableViewCell的子类。[为了操作tableViewCell的子类]

然后将cell的子类通过IB绑定到这个自己写的TableViewCell的子类。

从array到自己的cell后。通过写好了IB来设置子类内容。

 

2.直接在tableViewVC上设置原型cell为Custom,通过属性操作[更简单]

这个其实是更简单的方法 只是做完第一个才想清楚怎么操作。

设置为custom后我遇到的问题是不知道怎么获取到子类对象[既内容对象]。

其实,和上面方法一样。修改原型的类别为自己写的TableViewCell的子类,并且把子类通过IB绑定到属性上。

通过dequeueReusableCellWithIdentifier:@"原型cell的indentifier"

获取到cell并转型成自己写的TableViewCell的子类。通过属性来操作子类赋值。

 

3.直接在tableViewVC上设置原型cell为Custom,通过viewWithTag操作[更简单]

问题还是在于取到cell后不知道如何获得子view的对象。可以通过[cell viewWithTag:NSInteger tagid]

来获取到 子view对象。

 

 

 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
//返回 在indexPath位置的cell
{
//    static NSString *CellIdentifier = @"Cell";
//    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
    
    // Configure the cell...
    
//    //test1
//    LrnCell * cell;
//    if(cell==nil){
//    NSArray * array=[[NSBundle mainBundle]loadNibNamed:@"TestCell" owner:self options:nil];
//     cell =[array objectAtIndex:0];
//    cell.lab1.text=[NSString stringWithFormat:@"%d",indexPath.row*100];
//    cell.lab2.text=[NSString stringWithFormat:@"%d",indexPath.row];
//    self.num+=1;
//    }
    
    //test2
//    
//        static NSString *CellIdentifier = @"test";
//        LrnCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
//    cell.lab1.text=@"test1";
//    cell.lab2.text=[NSString stringWithFormat:@"%d",indexPath.row];
   
    //test3
    UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:@"test"];

        if (cell == nil) {
            cell = [tableView dequeueReusableCellWithIdentifier:@"test"];
        }
//    NSInteger x=1;
    UILabel *test=(UILabel *)[cell viewWithTag:1];
    test.text=@"xinde";
    UILabel *test2=(UILabel *)[cell viewWithTag:2];
    test2.text=@"囧2";
    
    
    return cell;
}
iOS - 一个页面多个tableview 和同事交流的时候总是能够学到新的知识,因为早些年学php和前端的缘故,面向过程的思想会多些,这样真的就浪费了面向对象预言的简洁优美。最好就是能够学会封装今天写的其中一个页面,用原来的思路(面向过程)和现在的思路(面向对象)昨个对比,就会知道封装的必要性! 先上图,看看效果: 因为只是作演示效果 请大家忽略我那些很丑的色块吧! 谢谢!先来分析若是早些时候,我会怎么去处理这个页面: 1.创 阅读详情

相关推荐

iOS TableView多级列表

代码地址如下:http://www.demodashi.com/demo/15006.html 效果预览 一、需求 TableView多级列表:分级展开或合并,逐级获取并展示其子级数据,可以设置最大的层级数,支持多选、单选、取消选择。 二、思路 由需求和示意图可知,这些数据元素之间存在着一对多关系,很符合 数据结构与算法 – 树形结构 的特征。那么,我们就用树形结构中的结点(Node)...

findhappy117的博客 2212

自定义 cell

自定义 cell 1> 什么是自定义 cell 自定义 cell 即 tableView,collectionView,scrollView中的 cell 使用的时候不能满足我们使用 cell 的需求,需要自己定义一个 cell. 2> 优点: 自定义 cell 是继承自系统的 cell, 因此它具有系统 cell 的所有的属性和方法 自定义 cell...

weixin_30535043的博客 155

sentaurus学习笔记(HFET_pGate_GaN仿真)(五)

`(sdedr:define-constant-profile`和`(sdedr:define-constant-profile-region`命令用于定义并应用一个恒定的活性硼掺杂浓度剖面`"ndop_GaN_gate_const"`到氮化镓栅极层上,其值为`NpGaN_gate`。- `"Oxide"`指定了这一层的材料名称(在这里代表氧化层),而`"nucleation"`是这一层在仿真中的标识名称。- `"GaN"`指定了这一层的材料名称,而`"GaN_gate"`是这一层在仿真中的标识名称。

qq_52640792的博客 940

ios tableview_iOS简单TableView示例教程

ios tableviewIn this tutorial we’re going to discuss and implement the TableView UI element in our iOS application. 在本教程中,我们将在iOS应用程序中讨论和实现TableView UI元素。 iOS TableView概述 (iOS TableView Overview) A ...

从零开始的教程世界 1201

属性基加密(Attribute-based Encryption, ABE)

KP-ABE中,用户的密钥定义了访问策略,密文的属性与策略进行匹配。CP-ABE中,密文定义了访问策略,用户的属性与策略进行匹配。

2201_75392924的博客 1830

EB TRESOS 29.0.0安装教程用于MCAL配置开发

本文介绍的搭建基于NXP官网提供EB软件,进行基于标准AUTOSAR软件底层驱动配置的开发

qq_53260940的博客 1873

IOS Tableview 联动

// 创建两个tablview #import "ViewController.h" #define SCREEN_WIDTH self.view.frame.size.width #define SCREEN_HEIGHT self.view.frame.size.height   @interface ViewController ()<UITableViewDelegate,...

weixin_42521912的博客 436

南大计算机2024保研笔试:编译原理等5门专业课考点分布与408复习避坑指南

本文详细解析了南京大学计算机2024保研笔试的考点分布与复习策略,重点突出编译原理(占比28%-32%)和离散数学的特色考核。提供跨课程复习方法、真题题型分析及高效备考建议,帮助考生突破传统408框架,应对南大独特的命题风格。

weixin_29304985的博客 343

iOS中TableView小技巧

TableView是ios开发中经常用到的控件,这里统一记录一下开发中遇到的常用小技巧,不断探索更新,也希望大家可以告诉我更多常用的小技巧啦~一起进步

Minecraft 2868

solidworks实体显示线框

solidworks实体莫名其妙显示为有点虚的线框

qq_35858902的博客 1万+

QTableView实现表格加载百万条数据

本文介绍用QTableView实现加载100万条数据显示到表格。 1.创建工程 用Qt Creator创建Qt Widgets Application项目,基类选择QWidget,创建好了,如图: 2.添加QTableView控件 在widget.ui中添加QTableView控件,和QPushButton,采用栅格布局,如图: 3.添加函数 头文件 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACE class Wid

丁爸的博客 8270

C# iOS Xamarin tableview

Xamarin开发iOS        今天,偶然的发现C#能够开发iOS了。到网上查阅了一下资料,原来是Xamarin团队做的跨平台开发技术,最近被微软收购了,最重要的是已经和VS结合了,而且个人版本的开发环境已经不需要花钱了,想必大家一听到免费,大家都会比较感兴趣,哈哈,屌丝我也是其中一员呢。在mac系统上面安装xamarin是非常简单的,首先安装Xcode,因为要用到Xcode的一些东西(

J_Kang的博客 1697

Python遥感图像处理指南(2)-卫星影像分析MNDWI提取

在第一篇文章中,我们使用了我们导入的软件包中已定义的函数,如 rasterio 中的 open 和 read 以及 matplotlib 中的 imshow。现在,我们可以编写自己的函数了。函数是一段代码,它接收一些参数作为输入并返回输出(经过一些计算),可以在代码中多次重复使用,也可以被其他代码重用。在 Python 中定义一个新函数非常简单。return v在此语法示例中,arg1和arg2强制参数,应该传递给函数,否则会引发错误,而arg3是一个可选参数,如果是,则假定默认值 1从函数调用中省略。

gis收藏家的博客 1575

ios实现两个tableview联动

两个tableview的联动,滑动左侧tableview,右侧tableview跟着滑动 其实实现起来比较简单,只是需要搞清楚他们之间的区别和联系,还有就是调用一个 - (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section

Mr_Big_Kong的博客 1885

大模型新闻摘要生成质量评估工具

大模型新闻摘要生成质量评估工具 关键词:大模型、新闻摘要、质量评估、自然语言处理、算法 摘要:本文将探讨大模型新闻摘要生成质量评估工具的设计与应用。首先介绍大模型新闻摘要生成的背景和问题,然后深入分析质量评估的难点和重要性,接着介绍大模型的

AI天才研究院 827

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

IOS 整理tableview的代码

在IOS应用里tableview是非常灵活的。因此,许多代码都直接的或间接的与tableview有关,包括提供数据,更新tableview,控制它的行为和选择相应的反应。在本文中,我们将展示一种技术使它代码简洁并且结构良好。 UIViewController 苹果提供UITableviewController作为tableview专用的view controller。UITableview

963

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

iOS中TableView的不同类型

介绍iOS自身支持的四种TableView类型的显示样式以及实现方式

Minecraft 3357

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

iOS tableView分区+索引

1.创建一个ViewController,New File->Cocoa Touch->Objective-C class->Class:ViewController,Subclass of:UIViewController 2.打开xib,在view中添加TableView,并将TableView的两个属性拖到File's Owner中, 可以设置tableview的分区样式,选

Dancer2015 的博客 2056

ios中在cell中嵌套TableView

** ios中在cell中嵌套TableView ** 整理了工作用到的小demo,项目中有个地方用到了需要在cell中嵌套tableView,而且tableView还可以折叠隐藏,所以外层的尺寸是不确定的,tableView的尺寸也是不固定的,因为嵌套的tableView的数据项不固定,每个cell高度都根据内容调整高度,这里将嵌套的tableView设置成不可滚动的,尺寸就是所有cell的高度...

wangpengke的博客 2849

iOS如何写一个tableView

iOS如何写一个tableView 本人的文字功夫不行,请大家多多谅解! 序言:首先,本篇不是教大家怎么怎么使用苹果已经自定义好的UITableView控件,而是怎样自己写一个tableView 。纳尼?有人肯定想写来有个毛线用啊,苹果的那么Perfect,直接用就简单完事了。是的,道理是这样的,但我是实现tableView的基本功能-重用,为以后聊重用机制时可以侃侃而谈罢了(你懂的)。那么开始:...

weixin_35186376的博客 353

iOS开发—tableview的混插

最近在忙着公司的事情,很少有时间来写东西,大多数时候是在技术交流。 昨天有一个自学ios的同学问了我一个问题,怎么利用数据对tableview的每一行进行混插。 正常来说,大多数App的数据类型在每一个页面上都是一致的,但是如果涉及到数据类型 不一致的,确实让人很难办,我给了他的思路是这样的: self.tablearr = [[NSMutableArray alloc]init];

伪随机的张三 559

iOS tableView 上下偏移

说一下问题吧,Xcode10 向下兼容到iOS8,iOS10以下版本会出现tableview向上或者向下偏移很是烦人。 于是山寨了一个解决方案 该方法适用于向上偏移 -(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath ...

1730

去掉ios的tableview中headerview的粘性

新创建的tableview的section随着tableview的滑动会粘着headView,由于需求的不同我们不想让他停留在顶部,在网上搜到了这个方法 // 去掉UItableview headerview黏性(sticky)   - (void)scrollViewDidScroll:(UIScrollView *)scrollView   {       CGFloat sectio

Nkkkkkk的专栏 1470

ios tableView那些事(二)给tableView添加数据

我们上一章已经创建了tableview现在我们给它添加点数据吧 #import   /*tableview 一定要用到这两个delegate  UITableViewDataSource,UITableViewDelegate */ @interface ViewController :UIViewController UITableViewDataSource,UITableV

qq_19590345的专栏 558

iOS tableView的优化处理

iOS 中造成tableView卡顿的原因都有哪些呢? 1).没有使用cell的重用标识符,导致一直创建新的cell 2).cell的重新布局 3).没有提前计算并缓存cell的属性及内容 4).cell中控件的数量过多 5).使用了ClearColor,无背景色,透明度为0 6).更新只使用tableView.reloadData()(如果只是更新某组的话,使用reloadSection进行局部更新) 7).加载网络数据,下载图片,没有使用异步加载,并缓存 8).使用addView 给ce

程序猿老樊的博客 921

iOS TableView给力动画的简单实现

前言 之前看见过很多动画, 都非常炫酷, 所以想弄一些比较简单的动画, 以后再项目中可能会用到, 以后还会持续更新类似的动画效果! GitHub下载地址: LRTableViewRollAnimation 效果图: 代码实现 首先我们要在cell中实现一个方法: 1 2 3 4 5 6 7 8 9 10 11 12 13 1

u014401241的博客 931
上一篇: [ios]scrollView实现移动与缩放
下一篇: [ios]tab bar
iPoolo
博客等级 码龄17年 2粉丝 168原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值