如何在tableview的cell上添加不同的图标

如何在tableview的cell上添加不同的图标,第1张

1.新建TableViewCell类,继承父类为UITableViewCell

1.1 "TableCell.h"

#import <UIKit/UIKit.h>

/**

* 房间桌子显示结构

* /

@interface TableCell : UITableViewCell {

  UILabel *tableNoLable// 桌子号

  UIImageView *tableImageView// 桌子图片

UIImageView *tableStateImageView// 桌子状态图片

@property (nonatomic ,retain) IBOutlet UILabel *tableNoLable// 桌子号

@property (nonatomic ,retain) IBOutlet UIImageView *tableImageView// 桌子图片

@property (nonatomic ,retain) IBOutlet UIImageView *tableStateImageView// 桌子状态图片

1.2 TableCell. m

#import "TableCell.h"

@implementation TableCell

@synthesize tableNoLable// 桌子号

@synthesize tableImageView// 桌子图片

@synthesize tableStateImageView// 桌子状态图片

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

if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {

// Initialization code

}

return self

}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {

[super setSelected:selected animated:animated]

// Configure the view for the selected state

}

- (void)dealloc {

[tableNoLable release]

[tableImageView release]

[hand3ImageView release]

[super dealloc]

}

@end

1.3 布置布局文件( xib 文件)指明 class 为自己定义的 tabelcellview

new 一个Empty Xib文件,其中不包含view, 在libriary中拖一个UITableCell到两个图标的框中,双击cellview,指明class为cell.m文件,开始编辑

2. 页面中在 tableView 中加载自己的 cell

#import "TableCell.h"

// 设置房间桌子数

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

[Util showLog:@"numberOfRowsInSection"]

return g_Room.wTableCount

}

// 设置单元格的高度

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{

[Util showLog:@"heightForRowAtIndexPath"]

return kTableViewRowHeight

}

// 设置单元个样式

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

[Util showLog:@"cellForRowAtIndexPath start"]

static NSString *tableCellIdentifier = @"TableCellIdentifier"

TableCell *cell = (TableCell *)[tableView dequeueReusableCellWithIdentifier:tableCellIdentifier]

[Util showLog:@"TableCellIdentifier"]

if(cell == nil){

NSArray *nib = [[NSBundle mainBundle]loadNibNamed:@"TableCell" owner:self options:nil]

for(id oneObject in nib){

if([oneObject isKindOfClass:[TableCell class]]){

cell = (TableCell *)oneObject

//***** 自己设计每个 cell 的内容,此函数会回调 table 的行数次,行数为 numberOfRowsInSection:(NSInteger)section 函数指定

// 显示桌子号码

NSUInteger row = [indexPath row] + 1

NSString *str =[NSString stringWithFormat:@"%d",row]

cell.tableNoLable.text = [[@" 第 " stringByAppendingString:str] stringByAppendingString:@" 桌 "]

[Util showLog:@"tableNoLable"]

if(deskshowFlg){

// 获取要绘画的桌子信息

Desk *tempDesk = [g_DeskArray objectAtIndex:[indexPath row]]

}

}

}

STEP1    数据准备

地图准备  剪裁好的并赋值好的.tif格式地图

注意:地图的坐标系要设置成投影坐标系, 不要设置成地理坐标系。 因为地理坐标系的图每一个格的像元值太小了, 在fragstats 运行的时候会报错 报错是 error cell size is too small

文件1: .fcd文件 

先在csv里整理文件格式如下(也可以直接用notepad写入,另存为.fcd文件)

id就是你地图里不同景观类型的赋值 如下图的1-7

name是对景观分类进行命名, enabled是指这一类型的景观在当前地图内是否存在, 不存在就写false

isbackground 是指当前景观是否当作当前地图的背景处理, 如果不是,就写false

然后保存文件,后用notepad 改格式为.fcd

文件2 .fsq文件

写入方法同上, 后面的0矩阵是 你有n个类,就写一个n*n的矩阵

STEP2 数据导入

导入地图 点击 add layer 

另外一种是import batch 批量导入。 这是一种通过导入一个文件然后自动提取相应位置地图的方法。个人觉得还要设置每一个地图的参数,十分麻烦,所以没用那个方法,教程链接我放在了文末的链接 教程截图如下 

add layer 可以一次导入很多地图

可以看到cell size 差不多在30左右 更大也没关系, 如果太小例如0.000029 软件没法计算

放入 fcd和fsq文件

选择分析参数

1 一般选用八单元格的算法,

2 勾选自动保存结果, 然后在后面选择你要保存的位置,并且命名文件

3你需要计算哪个类别的指数就勾选哪个类别

其他的框框我都选择默认选项 如果有需要可以酌情选择

勾选参数,结束后点击run 然后d出对话框 点击 proceed

结果就保存在刚才你保存的结果文件里

批量导入链接: 批量导入

地图编辑器就是编辑TiledLayer中的cell,可以方便的画出每个cell,J2ME的地图说实话就是铺路的形式,将地图模块刷成场景,素材可以自己做也可以网上下现成的,让你能看到地图的整体效果,而不是{{1,1,2,3},{2,2,2,3}}这样的数据,但它返回的却是这样的数据,直接粘过来就可以实现代码,我现在用mapwin,感觉还行

动画编辑器,同理的东西


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11556467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存