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

简单表视图并实现添加数据

阅读更多
1.基础:表用于显示数据列表。数据列表中的每项都由行表示。表视图是显示表数据的视图对象,它是UITableView类的一个实例,表中的每个可见行(表视图单元)都由UITableViewCell类实现。
2.实现表视图。
首先说明一下数据源(datasource)和委托(delegate)
在头文件中需要添加以下代码:<UITableViewDelegate,UITableViewDataSource>,它的作用是让类遵从两个协议,类需要使用这两个协议来充当表视图的委托和数据源,然后声明一个数组用于放置将要显示的数据。UITableView需要一个数据源(dataSource)来显示数据,UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等。没有设置数据源的UITableView只是个空壳。凡是遵守UITableViewDataSource协议的OC对象,都可以是UITableView的数据源。通常都要为UITableView设置代理对象(delegate),以便在UITableView触发一下事件时做出相应的处理。
3.声明数组分为不变数组(NSArray)和可变数组(NSMutable Array)
NSArray *array = [[NSArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil];

NSMutableArray *array = [[NSMutableArray alloc] init];

需要说明的是,创建一个NSMutableArray可以声明成NSArray,以此通知其他代码不应该修改此数组。
4.编写控制器
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
<UITableViewDelegate, UITableViewDataSource>
{
    UITableView *mTableView;
    NSArray *listData; 
}
@property (nonatomic, retain) NSArray *listData;
@end

tableView: numberOfRowsInSection:查看指定分区有多少行。
tableView: cellForRowAtIndexPath: 提供表视图单元格所需要的数据。
#import "ViewController.h"
@interface ViewController ()

@end
@implementation ViewController
@synthesize listData;
- (void)viewDidLoad
{
    [super viewDidLoad];
    mTableView = [[UITableView alloc]initWithFrame:CGRectMake(0, 0, [[UIScreen mainScreen] bounds].size.width, [[UIScreen mainScreen] bounds].size.height) style:UITableViewStylePlain];
    [self.view addSubview:mTableView];//实现tableview
    mTableView.delegate = self;
    mTableView.dataSource = self;
    NSArray *array = [[NSArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil];//创建不变数组
    self.listData = array;
}
- (void)viewDidUnload{
    self.listData = nil;
    [super viewDidUnload];
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
}

#pragma mark - 
//实现TableView数据源方法
#pragma mark Table View Data Source Methods
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [self.listData count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *cellIdentifier = @"cell";
    UITableViewCell *cell = [tableView dequeueReusableHeaderFooterViewWithIdentifier:cellIdentifier];
    if (cell == nil){
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
    }
    NSUInteger row = [indexPath row];
    cell.textLabel.text = [listData objectAtIndex:row];
    return cell;
}
@end
分享到:
评论

相关推荐

    abap 维护表视图

    在ABAP中,维护这些视图可以帮助开发人员更好地控制数据访问,提高数据处理效率,并实现特定的业务逻辑。 1. **创建和定义表视图** - 使用ABAP Data Dictionary(数据词典),开发人员可以创建和定义表视图。数据...

    IOS 创建简单表视图

    本实例将详细介绍如何创建一个简单的表视图,重点在于实现UITableViewDataSource协议中的核心方法。首先,让我们理解UITableViewDataSource协议的重要性。 UITableViewDataSource是iOS应用中用于驱动表视图内容的...

    iOS开发之表视图详解

    实现一个简单的表视图通常涉及以下步骤: 1. 创建一个新的iOS项目。 2. 在Storyboard中添加一个TableView,并将其填充到ViewController的视图区域。 3. 设置TableView的原型单元格(Prototype Cells),以定义单元格...

    IOS 动态添加视图

    本篇文章将深入探讨如何在iOS应用中实现动态添加视图,并以动态添加按钮为例进行实战演示。 首先,我们需要理解iOS中的视图层次结构。在iOS应用中,视图(UIView)是所有用户界面元素的基础,包括按钮、文本字段、...

    domino xpages 开发 view视图列数据过滤

    2. 添加数据源 3. 添加过滤条件 4. 生成查询语句 5. 将查询语句赋值给 View 视图 六、结论 在本文中,我们详细介绍了如何在 Domino XPages 中开发 View 视图列数据过滤功能。我们讲解了 View 视图的基本概念、数据...

    移动软件开发-3期(KC015) 表视图 教学设计.doc

    1. **表视图结构与样式**:表视图(UITableView)是基于UIScrollView的,它可以展示多组数据并支持滚动。样式包括普通样式(Plain)和组样式(Grouped),每种样式有不同的视觉效果。 2. **数据源协议与委托协议**...

    导航栏控制器与表视图简单Demo

    5. **实际应用**:在实际应用中,导航栏控制器和表视图的组合广泛应用于新闻应用、电商应用、社交应用等,用于展示列表数据并允许用户深入查看详细信息。 总的来说,`NavTableLastDemo`项目提供了一个基础的示例,...

    DevExpress中GridControl 主从表如何实现

    在DevExpress的.NET开发工具集中,GridControl是一款强大的数据呈现控件,它提供了丰富的功能和高度定制性,使得在Windows Forms应用程序中实现主从表关系变得简单。主从表(Master-Detail)是一种常见的数据展示...

    Bootstrap treeview实现动态加载数据并添加快捷搜索功能

    Bootstrap Treeview 实现动态加载数据并添加快捷搜索功能 Bootstrap Treeview 是一个基于 Bootstrap 的 jQuery 插件,用于显示树形结构数据。该插件支持多级列表树结构,能够以简单和优雅的方式显示继承树结构,如...

    解决了卷轴视图动态添加

    为了实现动态添加,我们需要在运行时创建并添加这些子视图。例如,我们可能有一个需求,即根据服务器返回的数据动态生成一系列按钮或图片。以下是一个简单的示例: ```java ScrollView scrollView = findViewById(R...

    ios-模仿UITableView的机制实现横向可重用滑动视图(同时简单实现了侧滑).zip

    此外,"同时简单实现了侧滑"这部分可能是指在每个滑动视图元素上添加了手势识别器,允许用户通过向左或向右滑动来触发特定的侧滑操作,例如删除、编辑或者更多选项。这种功能在许多应用中都很常见,比如邮件应用中的...

    视图网格、数据列表、代码生成器

    Repeater不提供任何内置的样式或操作功能,只是一个简单的模板容器,用于遍历数据源并生成HTML。开发者需要编写HTML和服务器端代码来实现数据的显示和操作,适合于对布局有特殊需求或需要完全控制HTML输出的情况。 ...

    VC_应用程序中多视图的实现与通信

    在VC++中实现多视图应用程序,并非一项简单的任务,它需要对MFC框架有深入的理解和熟练的掌握。通过合理的设计和编码实践,可以构建出既美观又实用的多视图界面,极大地提升用户的交互体验。同时,视图间通信的实现...

    asp.net MVP模式简单实现(被动视图)

    在这个简单的实现中,我们关注的是Passive View变体,即视图是被动的,主要由Presenter驱动。 **模型(Model)**:模型层是应用程序的核心,负责处理数据和业务逻辑。在这个案例中,虽然没有依赖注入的实现,但预留了...

    TableView表视图基础及第一个IOS程序源码

    在iOS开发中,TableView(表视图)是用于展示数据的一种常见且强大的控件,它在用户界面设计中扮演着核心角色。这个压缩包文件包含了关于"我的第一个iOS程序"和"TableView表视图基础"的源代码,是学习iOS编程特别是...

    表视图下拉刷新动画仿京东

    1. 初始化表视图并设置数据源和代理: ```swift let tableView = UITableView(frame: view.bounds, style: .plain) tableView.dataSource = self tableView.delegate = self view.addSubview(tableView) ``` ...

    Android之ListView列表视图实现

    在Android开发中,ListView是展示大量数据的一种常见视图组件,尤其适用于菜单、选项列表等场景。本资源提供了一个完整的Android应用示例,专门讲解如何实现ListView及其交互功能。 首先,ListView的基础在于...

    ViewPager实现视图切换

    然而,在这个简单的示例中,`destroyItem()`并未被重写,因为默认实现已经足够处理视图的移除。 此外,为了使`ViewPager`能够响应用户的触摸手势,还需要确保`PagerAdapter`正确实现了`isViewFromObject()`方法,这...

Global site tag (gtag.js) - Google Analytics