`

ios 工程代码整理

 
阅读更多
//  Query Message.h
//  Reservation software
//
//  Created by 张亚雄 on 15/7/7.
//  Copyright (c) 2015年 张亚雄. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface FindOrderTableViewController : UITableViewController<UITableViewDelegate,UITableViewDataSource>
{
    NSArray *m_arr_data_source;
    NSMutableArray *m_arr_data_sources;
    
}
@property(nonatomic,retain)UITableView *tableView;
@property(strong,nonatomic) NSArray *listData;

@end

 

//  Query Message.m

//  Reservation software

//

//  Created by 张亚雄 on 15/7/7.

//  Copyright (c) 2015张亚雄. All rights reserved.

//

 

#import "FindOrderTableViewController.h"

#import "ValueTableViewCell.h"

 

@interfaceFindOrderTableViewController ()

 

@end

 

@implementation FindOrderTableViewController

@synthesize listData=_listData;

 

 

- (void)viewDidLoad

{

    [superviewDidLoad];

     //    获取沙盒内的文件

    m_arr_data_source = [selfread_file_from_path:@"order.plist"];

    m_arr_data_sources = [selfread_file_from_path:@"nameFile.plist"];

    double sum_price = [selfget_ordered_sum_price];

    [selfcreat_label_price:sum_price];

    

}

-(double)get_ordered_sum_price

{

    //  for 循环如果i内容为1组,i行数为自动换行数

    for (int i = 0; i < m_arr_data_source.count; i++)

    {

        //   提取已定套餐内容

        NSDictionary *orderinfo = [m_arr_data_sourceobjectAtIndex:i];

        //        从已定套餐内容里提起name

        NSString *strName = [orderinfo objectForKey:@"name"];

        //      for循环变量j内容为1组,j行数为自动换行数

        for (int j = 0; j < m_arr_data_sources.count; j++)

        {

            //从未定套餐中名字中提取内容

            NSString *name = [m_arr_data_sourcesobjectAtIndex:j];

            //            对比strNamename的不同内容

            if ([strName isEqualToString:name])

            {

                //                减去相同的内容

                [m_arr_data_sourcesremoveObject:name];

                //                结束

                break;

            }

        }

    }

    double sum_price = 0;

    //    for循环提取k的自动行数

    for (int k = 0; k < m_arr_data_source.count; k++)

    {

        //    提取已定套餐显示的内容

        NSDictionary *priceinfo = [m_arr_data_sourceobjectAtIndex:k];

        //        从已定套餐内容提取想要显示的价位值转换字符串变数组

        NSString *strprice = [priceinfo objectForKey:@"price"];

        double double_price = strprice.doubleValue;

        sum_price = sum_price + double_price;

    }

    return sum_price;

}

-(UILabel *)creat_label_price:(double)sum_price

{

    //   声明一个lablesum_price 放到lable里。

    UILabel *label = [[UILabelalloc]initWithFrame:CGRectMake(0self.view.frame.size.height-73self.view.frame.size.width30)];

    label.backgroundColor = [UIColorblackColor];

    label.text = [[NSStringalloc]initWithFormat:@"总计%.2f",sum_price];

    label.font = [UIFontfontWithName:@"Arial"size:30];

    label.textAlignment = NSTextAlignmentCenter;

    label.textColor = [UIColorwhiteColor];

    label.adjustsFontSizeToFitWidth = YES;

    [self.viewaddSubview:label];

    return label;

}

 

//沙盒

- (NSMutableArray *)read_file_from_path:(NSString *)fileName

{

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectoryNSUserDomainMaskYES);

    //获取沙盒中Documents文件的路径

    NSString *str_file_path = [paths objectAtIndex:0];

    //将自己想创建的文件名添加到Documents录后,拼成一整个字符串

    NSString *str_data_file_path = [str_file_path stringByAppendingPathComponent:fileName];

    NSMutableArray *array_data_source = [[NSMutableArrayalloc]initWithContentsOfFile:str_data_file_path];

    return array_data_source;

    

}

- (void)didReceiveMemoryWarning

{

    [superdidReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

#pragma mark - Table view data source

/* 这个函数是显示tableview的章节数*/

-(NSInteger)numberOfSectionsInTableView:(UITableView*)tableView

{

    return2;

}

/*设置标题尾的宽度*/

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section

{

    return30;

}

/*设置标题头的名称*/

 

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;

{

// 标题的   标头设置

    UIView *view = [[UIViewalloc]initWithFrame:CGRectMake(00self.view.frame.size.width30)];

    view.backgroundColor = [UIColorbrownColor];

    if (section == 0)

    {

        UILabel *label0ne =[[UILabelalloc]initWithFrame:CGRectMake(0,0,200,30)];

        label0ne.text = @"已定套餐";

        [view addSubview:label0ne];

    }

    else

    {

        UILabel *lableTwo = [[UILabelalloc]initWithFrame:CGRectMake(0020030)];

        lableTwo.text = @"未定套餐";

        [view addSubview:lableTwo];

    }

    return view;

}

 

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

{

// 返回多少行

    if(section == 0)

    {

        returnm_arr_data_source.count;

    }

    if (section == 1)

    {

        returnm_arr_data_sources.count;

    }

    return0;

}

 

 

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

{

    //    声明静态字符串型对象,用来标记重用单元格

    staticNSString *CellIdentifier = @"cells";

    //    TableSampleIdentifier表示需要重用的单元

    ValueTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    //    如果如果没有多余单元,则需要创建新的单元

    if (cell == nil)

    {

        cell = [[ValueTableViewCellallocinitWithStyle:UITableViewCellStyleDefaultreuseIdentifier:CellIdentifier];

    }

    if (indexPath.section == 0)

    {

        //    获取当前行信息值

        NSUInteger row = [indexPath row];

//        获取当价钱前值的行数

        NSString *str_price = [[m_arr_data_sourceobjectAtIndex:row]objectForKey:@"price"];

//        将价钱值类型转换成double类型,

        double d_price = str_price.doubleValue ;

//        将价钱值作比较大于11的数显示为红色。

        if (d_price > 11.00)

        {

            cell.price_text_label.textColor = [UIColorredColor];

        }

        //  name txte label = [[ sha he shu ju yuan zhong lei zhi yin ] yin yong zi dian nei ming cheng]

        cell.name_text_label.text = [[m_arr_data_sourceobjectAtIndex:row]objectForKey:@"name"];

        cell.price_text_label.text = str_price;

        cell.restaurant_text_label.text = [[m_arr_data_sourceobjectAtIndex:row]objectForKey:@"restaurant"];

        cell.combo_text_label.text = [[m_arr_data_sourceobjectAtIndex:row]objectForKey:@"combo"];

//        cell.money_text_label.text =[@"¥"];

    }

    if (indexPath.section == 1)

    {

        cell.textLabel.text = [m_arr_data_sourcesobjectAtIndex:indexPath.row];

    }

    return cell;

}

 

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

{

    return80;

}

 

 

@end

 

分享到:
评论

相关推荐

    iOS应用逆向工程:分析与实战

    分析与实战是iOS应用逆向工程方面的权威著作,三位作者都是iOS领域内的专家,拥有扎实的理论知识和丰富的实践经验。本书内容以工具+代码的形式全面、系统地展开知识点,由浅入深,图文并茂地带着读者一步步探索常规...

    iOS应用逆向工程(第2版)高清版 沙梓社 吴航 著

    iOS应用逆向工程(第2版) 第一部分 概 念 篇 第1章 iOS逆向工程简介 3 1.1 iOS逆向工程的要求 3 1.2 iOS应用逆向工程的作用 4 1.2.1 安全相关的iOS逆向工程 5 1.2.2 开发相关的iOS逆向工程 6 1.3 iOS应用...

    ios安全学习笔记

    iOS安全学习笔记的知识点涵盖了多个方面,从学习资料的搜集到优秀博客文章和GitHub资源的整理,这为iOS安全研究者提供了一个丰富的资源库。以下是对上述内容中提及知识点的详细说明: 1. iOS安全学习资料汇总 首先...

    马上着手开发 iOS 应用程序 Start Developing iOS Apps Today

    以上内容基于《马上着手开发iOS应用程序》文档整理而成,旨在帮助初学者快速入门iOS应用开发。随着实践经验的积累和技术的不断进步,开发者能够更好地理解和掌握这些核心概念,并应用于实际项目中。

    2020IOS面试题及答案整理.docx

    你应该准备描述一个具体的项目案例,阐述你在其中的角色,使用的开发工具和技术栈,以及如何通过代码优化提升性能或用户体验。 2. **Automatic Reference Counting (ARC)** ARC是iOS开发中的内存管理机制,从iOS 5...

    IOS-MQTT-Client 编译过程与使用

    7. **整理编译产物**:将编译好的MQTTClient.framework、Pods_MQTTClientiOS.framework和其他必要的.h文件整理到一个项目文件夹内,形成一个可以集成到iOS工程的结构。 8. **新建Xcode工程**:创建一个新的Xcode...

    用于做统计代码生成,统计iOS和Android归纳整理的一系列脚本.zip

    操作系统:LInux、IOS、树莓派、安卓开发、微机操作系统、网络操作系统、分布式操作系统等。此外,还有嵌入式操作系统、智能操作系统等。 网络与通信:数据传输、信号处理、网络协议、网络与通信硬件、网络安全网络...

    IOS面试宝典 最新

    【iOS面试宝典——最新版】是一份集大成的面试指南,专为那些准备投身或已经在iOS开发领域摸爬滚打的工程师们量身打造。...同时,配合【印象笔记.pdf】,可以更系统地整理和回顾所学,巩固知识,提高面试成功率。

    ios-SynxPlugin 基于Synx的插件,帮助将项目中的group同步成目录中的文件夹.zip

    在iOS开发过程中,组织代码结构是一项重要的任务,它有助于项目的可维护性和团队协作。`ios-SynxPlugin` 是一个基于 `Synx` 的插件,它的主要目标是简化这个过程,将Xcode项目中的Group结构自动同步到实际的文件系统...

    ios-乐燃纸上.zip

    在压缩包内的文件“乐燃纸上”,可能是这个项目的主工程文件或者是包含整个项目源代码的文件夹。通常,iOS项目会包含一系列的Swift或Objective-C源代码文件(.swift或.m/.h),资源文件(如图片、音频、故事板文件....

    考试类精品--整理 14 类 iOS 常问面试题,大佬面经,校招面经,大师班考题。.zip

    14. **软件工程**:敏捷开发、Scrum流程、代码规范、团队协作和项目管理的理解。 压缩包内的"ahao4"可能是一个文件或文件夹,具体包含的可能是上述某个或多个知识点的详细解答、样例代码或案例分析。对于准备面试的...

    SpamCode:垃圾代码生成器

    扫描工程中的代码,生成同等数量的 Category 文件,文件中及是同等方法数量的垃圾代码。 修改 xxx.xcassets 文件夹中的 png 资源文件名。 删除代码中的所有注释和空行。 使用 使用源码 下载源码。 用 Xcode 打开工程...

    IOS应用源码——国内网站分类导航 WebsiteNavigation.zip

    "IOS应用源码——国内网站分类导航 WebsiteNavigation.zip" 是一个与iOS应用开发相关的资源,其中包含了构建一个能够对国内网站进行分类导航的应用的源代码。"WebsiteNavigation"很可能是这个应用的项目名称,它体现...

    IOS 封装静态库Demo

    在iOS开发中,静态库(Static Library)是一种将多个源代码编译成的二进制文件打包在一起的库形式,开发者可以将其集成到项目中,以便复用代码或提供特定功能。静态库在编译时会被直接链接到目标应用程序中,成为...

    IOS项目基础框架

    IOS项目的基础框架,对于移动开发而言、每个工程都有一些必不可少的代码,复用性是非常之高的。 比如:网络、验证、按钮、逻辑列表、字符串处理、日期处理、解析处理、数据库、颜色等等。所以我就整理的这么一套东东...

    ios-iOS-仿赤兔、新浪微博动态列表(带评论、点赞、转发和分享,自动计算行高功能).zip

    最近有空整理一下项目,做了一个仿赤兔、新浪微博动态列表(带评论、点赞、转发和分享,自动计算行高功能)的DEMO。HKPTimeLine ,喜欢的可以star一下哦。 csdn : ...

    渗透测试环境搭建常用命令方法checklist(iOS&&Android).zip

    - ** Frida**:动态代码插桩工具,可注入代码到正在运行的应用,便于逆向工程和调试。 - **iOSSh**:提供SSH访问到iOS设备,方便远程控制和数据提取。 2. **Android渗透测试环境**: - **Genymotion**:快速且...

Global site tag (gtag.js) - Google Analytics