UITableView 界面小实例

最近一是很忙,没时间写东西,今天抽时间来总结一下这几天学到的东西

首先看看,程序现在的样子:

基本完成这些,还有一个webview就不截图了

 

记录一下要点,首先自定义tableview,这个是按照iphone3开发基础教程上面的内容改的,基本思路是,定义一个

UITableViewCell的子类,然后在子类里面进行布局,最后在用到这个tableview的

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath这个函数中创建

CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CustomCellIdentifier];

这里我设置了cell选中和未选中的背景图片,代码如下:

[cell setSelectedBackgroundView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"tabcellbkon.png"]]]; //设置选中后的背景,同前一个方法。

UIView *tabview = [[UIView alloc] initWithFrame:cell.frame];

UIImageView *tableImageView = [[UIImageView alloc] initWithFrame:cell.frame];

tableImageView.image = [UIImage imageNamed:@"tabcellbk.png"];

[tabview addSubview:tableImageView];

cell.backgroundView = tabview;

[tableImageView release];

[tabview release];

别的就没啥东西了。在看看别的。这里要说说第一张最上面的那个tab按钮,这个做的有点困惑,我用的系统的

navigationController,不是自定义,刚开始不知道,创建了按钮就是放不上去,结果网上搜,别人能出来,后来仔细一下才发现,估计是apple做了一下限制,只能如下这样创建:

UIButton *btn1 = [[UIButton alloc] initWithFrame:CGRectMake(16, 2.0f, kNavButtonWide, kNavButtonHeight)];

[btn1 setTitle:@"最新更新" forState:UIControlStateNormal];

[btn1 setTag:1];

btn1.titleLabel.font = [UIFont systemFontOfSize: 14.0];

[btn1 addTarget:self action:@selector(button_clicked_tag:) forControlEvents:UIControlEventTouchUpInside];

[titleview addSubview:btn1];

[btn1 release];
然后不能设置button选中和未选中的图片。即不能像下面这样:
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
[btn setFrame:CGRectMake(offset + i*kNavButtonWide, 5.0f, kNavButtonWide, kNavButtonHeight)];
[btn setBackgroundImage:[UIImage imageNamed:@"navbarbuttonbk.png"] forState:UIControlStateNormal];
[btn setBackgroundImage:[UIImage imageNamed:@"navbarbuttonSelect.png"] forState:UIControlStateSelected];

说说tab的原理,首先创建了一个uiview,作为titleview,然后在上面放了一张背景图片,也就是蓝色的那一条,接着放3个button上去,写上字,然后在创建一个uiimageview代表selectview,然后在按钮的响应函数做动画处理和页面切换,就这么简单。
第2个页面9宫格页面是找来网上别人写的例子实现的。这个不详细说明了,也是用tableview做的,只不过我这里记录一下tabview去掉边线的方法
//设置标示图分割行的颜色为空,为了去掉分割线
self.tableview.separatorColor = [UIColor clearColor];
tableview设置背景,我在之前的文章有介绍,所以就不说了,设置界面弄了很长时间,主要是做设置推送时间那块。那块添加了一个选择器,然后打开选择器会自动定位到之前选定的时间,还做了一个时间判断,就是选择的开始时间,不能大于结束时间。这块代码比较多,整理之后在发。
先发这写吧,想到了在加

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/296025.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 文档属于apache,Apache 安装和使用文档

Apache 安装和使用文档更新时间:2009年11月26日 00:34:37 作者:Apache安装和使用文档一、准备工作:1台PC机,安装linux操作系统 参考文档linux安装.docx2 gcc的安装 参考文档gcc的安装.zip3 apache的安装包httpd-2.0.63.tar.gz二…

在数学世界,都有这些美妙的数学公式......

全世界只有3.14 % 的人关注了爆炸吧知识什么是数学?华罗庚说:宇宙之大,粒子之微,火箭之速,化工之巧,地球之变,生物之谜,日用之繁,无处不用数学......回首往昔&#xff0c…

.NET 生态系统的蜕变之 .NET 6云原生

云原生的英文名是cloud native,native 就是土著的意思,也就是土著对当地的环境是非常适应的,在云的环境和传统的数据中心是非常不同的,云原生就是要用的云的技术来构建应用, 利用云的技术来降低种端服务的风险和提高可…

世界十大无法科学解释灵异事件(进来发表自己看发)

1、法老咒语(世界最大灵异事件) 2、葡萄牙灵异事件(在网上引起了极大的轰动) 3、伦敦塔闹鬼(超著名) 4、20世纪上海滩灵异事件(孟小冬照片灵异事件) 5、鬼脸(墙壁上出…

宝塔linux面板假设nextcloud,宝塔面板部署NextCloud(14.0.3)逐一解决后台安全及设置警告...

刚刚把NextCloud更新到14.0.3,后台又出现了一堆警告,也是够烦的。之前写过 宝塔面板部署NextCloud逐一解决后台安全及设置警告,那个是基于Nextcloud 13.x的,所以就再补充记录一下解决如下的警告。Use of the the built in php mai…

ASP.NET Core启动地址配置方法及优先级顺序

前言默认情况下,ASP.NET Core使用下列2个启动地址:http://localhost:5000 https://localhost:5001同时,我们也可以通过配置或代码方式修改启动地址。那么,这几种修改方式都是什么?谁最后起作用呢?设置方法1.applicatio…

那些喜欢少妇的男生......

1 听说你喜欢少妇?▼2 没错!就是它!▼3 你还缺男朋友吗?▼4 还能怎么样?(via:臭人脸上的鼻涕)▼5 特效还能这样玩?▼6 哈哈哈哈哈(via:Guide&…

Openfire3.10beta版源码在eclipse上部署编译

一、源码下载 最近由于需求,需进行openfire的插件开发,于是需将openfire的源码进行部署,目前最新的openfire稳定版本是3.9.3,官方下载地址是http://www.igniterealtime.org/downloads/index.jsp,下载页面如图&#xff…

首次公开!人教版1-9年级绝密编写:被重点中小学永久收录的数学教案和试题...

全世界只有3.14 % 的人关注了爆炸吧知识在中国的教育历史上,不少人都会有感慨:“我是读着人教版教材长大的”。(人教版即由人民教育出版社出版。)的确,由毛泽东主席亲笔题写社名的人民教育出版社,自1950年1…

如何通过 C# 自动捕获一个文件的变更?

咨询区 PaulB:请问在 C# 中如何实现当一个磁盘文件的变更,让我的程序马上能感知到?回答区 Dirk Vollmar:在 C# 中有一个 FileSystemWatcher 类,它专门用来做文件的变更感知,大概有如下四类通知事件&#xf…

安装分布式文件系统MooseFS

示意图#4种角色共有的安装步骤yum install gcc zlib zlib-devel fuse fuse-devel fuse-libs libpcap libpcap-devel net-tools useradd mfs -s /sbin/nologin cd /download/ tar xf moosefs-2.0.80.tar.gz cd moosefs-2.0.80 ./configure \ --prefix/usr/local/mfs \ --with-de…

太爽了!宅男醒来后,发现自己变成了……

全世界只有3.14 % 的人关注了爆炸吧知识小编这两天看了一本关于数学家的故事后开了一个脑洞:如果把那些数学大神的故事写成爽文会是什么样?以下内容,纯属娱乐和虚构。前方高能预警第一章 称王冠原来是这样的“阿基米德,国王叫你呢…

陈睿学长在CUIT建校70周年校庆上的演讲

【个人成长】| 总结/Edison Zhou1睿叔演讲背景10月23号,我的母校成都信息工程大学(以下简称CUIT)举行了建校70周年(1951~2021)校庆,B站(哔哩哔哩)董事长兼CEO陈睿(睿叔&a…

poj2442Sequence(优先队列)

http://poj.org/problem?id2442 题解http://www.cnblogs.com/372465774y/archive/2012/07/09/2583866.html 本来写的二维数组 &#xff0c;直接対一维排序 不知道为嘛一直WA 只好该为一维的 就AC了 View Code 1 #include <iostream>2 #include<cstdio>3 #includ…

System.Text.Json 中的字符编码

System.Text.Json 中的字符编码Intro默认的 System.Text.Json 序列化的时候会把所有的非 ASCII 的字符进行转义&#xff0c;这就会导致很多时候我们的一些非 ASCII 的字符就会变成 \uxxxx 这样的形式&#xff0c;很多场景下并不太友好&#xff0c;我们可以配置字符编码来解决被…

maven3安装和使用笔记

2019独角兽企业重金招聘Python工程师标准>>> 1、下载 http://maven.apache.org/download.cgi 2、解压 3、配置环境变量 M2_HOME D:\program\apache-maven-3.3.3 Path : %M2_HOME%\bin 4、验证是否成功 打开命令行窗口&#xff0c;输入mvn -version&#xff0c;显示…

数学,原来可以这么美!

全世界只有3.14 % 的人关注了爆炸吧知识法国著名艺术家罗丹曾说&#xff1a;世界中从不缺少美&#xff0c;而是缺少发现美的眼睛。对于我们的眼睛&#xff0c;不是缺少美&#xff0c;而是缺少发现。在艺术者眼中&#xff0c;一切都是美的&#xff0c;因为他锐利的慧眼&#xff…

Hadoop的伪分布安装 hadoop的核心思想

Hadoop的伪分布安装hadoop的安装分为本地模式、伪分布模式、集群模式。本地模式是运行在本地&#xff0c;只负责存储&#xff0c;没有计算功能&#xff0c;本书不讲述。伪分布模式是在一台机器上模拟分布式部署&#xff0c;方便学习和调试。集群模式是在多个机器上配置hadoop&a…

lambda与内置函数

2019独角兽企业重金招聘Python工程师标准>>> 学习条件运算时&#xff0c;对于简单的 if else 语句&#xff0c;可以使用三元运算来表示&#xff0c;即 # 普通条件语句 if 1 1:name eddy else:name yys# 三元运算 name eddy if 1 1 else yys lambda表达式 # ###…

年仅21岁,干掉6位诺贝尔奖得主,被誉为科学界最强杀手,却惨被人骂成一个笑话...

全世界只有3.14 % 的人关注了爆炸吧知识在刚过去的国庆假期期间&#xff0c;超模君总是在不经意间看到许多诡异的小视频&#xff01;而一提起充满诡异气息的视频&#xff0c;《走近科学》这档节目堪称经典&#xff01;然而在去年&#xff0c;经典科普电视节目《走近科学》迎来最…