设置与帮助

改动头像, 改动password, 移动客服, 帮助, 声明, 关于我们.


代码

//
// IndexSetting600ViewController.h
// SymptomChecker
//
// Created by wang on 2015-7-21.
//
// #import "CYTableViewController.h" @interface IndexSetting600ViewController : CYTableViewController @end
//
// IndexSetting600ViewController.m
// SymptomChecker
//
// Created by wang on 2015-7-21.
//
// #import "IndexSetting600ViewController.h"
#import "UserCenter600Item.h" #import "UserInfoEditingItem.h" // 改动头像
#import "PortraitPickerViewController.h" // 照片视图 #import "ModifyPasswordViewController.h" // 改动password
#import "LocalPasswordViewController.h" #import "CYWebFromLocalViewController.h" // 帮助/声明
#import "CYAboutUsViewController.h" // 关于我们 #define kViewRadio viewWidth()/320 @interface IndexSetting600ViewController () <PortraitPickerViewControllerDelegate> @end @implementation IndexSetting600ViewController { UserFigureEditingItem *_figureItem; // 改动头像
PortraitPickerViewController *_portraitPickerViewController; // 改动头像视图 Setting600Item *_changeSecret; // 改动登录password
Setting600Item *_chunyuTel; // 移动客服
Setting600Item *_helpItem; // 帮助
Setting600Item *_shengMing; // 声明
Setting600Item *_aboutUs; // 关于我们 Setting600SeparateItem *_separateItem; // 空白切割cell FilledColorButton *_logoutButton; // 注销button UIView *_logoutFooterView;
} - (id) initWithQuery:(NSDictionary *)query {
self = [super initWithQuery: query];
if (self) {
self.title = @"设置与帮助";
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(createModel)
name:kRegisterLocalPassword
object:nil];
}
return self;
} - (void) dealloc {
[[NSNotificationCenter defaultCenter] removeObserver: self];
} - (void) viewDidLoad {
[super viewDidLoad];
[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
[self createTableItems]; // 确保item已经创建出来
} - (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear: animated];
} //
// 创建一次仅仅需
//
- (void) createTableItems { CY_DEFINE_SELF_BAR(self); User* user = [User currentUser]; // 改动头像
_figureItem = [[UserFigureEditingItem alloc] initWithTitle:@"头像" value:[user.matPhoto getMediaUrl]];
[self.tableViewActions attachToObject:_figureItem
tapBlock:^BOOL(id object, id target, NSIndexPath *indexPath) {
[_self editUserFigure];
return YES;
}]; // 改动登录password
_changeSecret = [[Setting600Item alloc] initWithTitle: @"改动登录password"];
_changeSecret.type = kSetting600Top;
[self.tableViewActions attachToObject: _changeSecret
tapBlock:^BOOL(id object, id target, NSIndexPath *indexPath) {
ModifyPasswordViewController *controller = [ModifyPasswordViewController new];
[_self cyPresentViewController:controller
animated:YES];
return NO;
}]; // 移动客服
_chunyuTel = [[Setting600Item alloc] initWithTitle: @"移动客服"];
_chunyuTel.type = kSetting600Middle;
[self.tableViewActions attachToObject: _chunyuTel
tapBlock: ^BOOL(id object, id target, NSIndexPath *indexPath) {
NSString* feedBackPhoneNumber = @"4001100866";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString: [NSString stringWithFormat: @"tel://%@", feedBackPhoneNumber]]];
return YES;
}]; // 帮助
_helpItem = [[Setting600Item alloc] initWithTitle: @"帮助"];
_helpItem.type = kSetting600Middle;
[self.tableViewActions attachToObject: _helpItem
tapBlock: ^BOOL(id object, id target, NSIndexPath *indexPath) {
CYWebFromLocalViewController* controller = [[CYWebFromLocalViewController alloc] initWithQuery:@{@"title" : @"帮助", @"local_name" : @"help"}];
[self.navigationController pushViewController:controller animated:YES]; return YES;
}]; // 声明
_shengMing = [[Setting600Item alloc] initWithTitle: @"声明"];
_shengMing.type = kSetting600Middle;
[self.tableViewActions attachToObject:_shengMing
tapBlock:^BOOL(id object, id target, NSIndexPath *indexPath) {
CYWebFromLocalViewController* controller = [[CYWebFromLocalViewController alloc] initWithQuery:@{@"title" : @"声明", @"local_name" : @"statement"}];
[self.navigationController pushViewController:controller animated:YES]; return YES;
}]; // 关于我们
_aboutUs = [[Setting600Item alloc] initWithTitle: @"关于我们"];
_aboutUs.type = kSetting600Bottom;
[self.tableViewActions attachToObject:_aboutUs
tapBlock:^BOOL(id object, id target, NSIndexPath *indexPath) {
CYAboutUsViewController* controller = [[CYAboutUsViewController alloc] initWithQuery:@{@"title" : @"关于我们", @"local_name" : @"about"}];
[self.navigationController pushViewController:controller animated:YES];
return YES;
}]; // 切割
_separateItem = [[Setting600SeparateItem alloc] init]; // 底部视图
_logoutFooterView = [UIView viewWithFrame:CGRectMake(0, 0, self.view.width, 92*kViewRadio)
andBkColor:[UIColor clearColor]];
self.tableView.tableFooterView = _logoutFooterView; // 版本号信息
UILabel *versionLabel = [UILabel labelWithFrame:CGRectMake(0, 8*kViewRadio, viewWidth(), 12*kViewRadio)
fontSize:11
fontColor:RGBCOLOR_HEX(0x522121)
text:[NSString stringWithFormat: @"当前版本号 :%@", @"1.0.0"]
];
[versionLabel setTextAlignment:NSTextAlignmentCenter];
[_logoutFooterView addSubview:versionLabel]; CGRect logoutRect = CGRectMake(16*kViewRadio,
versionLabel.bottom+16*kViewRadio,
viewWidth()-32*kViewRadio,
44*kViewRadio);
// 注销button
_logoutButton = [[FilledColorButton alloc] initWithFrame: logoutRect
color: RGBCOLOR_HEX(0xe85454)
highlightedColor: RGBCOLOR_HEX(0xa43939)
textColor: [UIColor whiteColor]
title: @"注销"
fontSize: 16*kViewRadio
isBold: YES];
[_logoutButton addTarget: self
action: @selector(onLogOutBtnpressed:)
forControlEvents: UIControlEventTouchUpInside];
[_logoutFooterView addSubview:_logoutButton]; } - (void)editUserFigure {
_portraitPickerViewController = [[PortraitPickerViewController alloc] initWithParent:self];
_portraitPickerViewController.delegate = self;
[_portraitPickerViewController showOptions];
} - (void) createModel { NSArray *dataItems; if ([User hasLoggedIn]) {
dataItems = @[_separateItem,
_figureItem, // 改动头像
_separateItem,
_changeSecret,// 改动登录password
_chunyuTel, // 移动客服
_helpItem, // 帮助
_shengMing, // 声明
_aboutUs, // 关于我们
_separateItem];
} else {
_logoutButton.hidden = YES;
_logoutFooterView.height = 40; dataItems = @[_separateItem,
_chunyuTel, // 移动客服
_helpItem, // 帮助
_shengMing, // 声明
_aboutUs, // 关于我们
_separateItem];
} self.tableViewModel = [[NITableViewModel alloc] initWithListArray:dataItems
delegate:self.cellFactory];
} #pragma mark - btn-selectors
// 点击注销
- (void) onLogOutBtnpressed:(UIButton*) sender {
NIDPRINTMETHODNAME(); // 登出
[[AutoLoginManager sharedInstance] logout]; // 更新当前的界面
[self createModel]; [self backToLastController: nil]; // 让别的地方改变UI
[[NSNotificationCenter defaultCenter] postNotificationName:kNotificationUserLogout
object:nil]; // 获取未登录的badge
[[NSNotificationCenter defaultCenter] postNotificationName:kNotificationCheckBadge
object:nil];
} @end

效果


IOS - 设置与帮助界面的更多相关文章

  1. iOS设置app应用程序文件共享

    1.iOSapp应用程序文件共享 当我们用itnues连接到设备时,在应用程序栏目下面,文件共享下,点击 对应的程序,即可以在程序右边栏目里面看到应用程序共享的数据, 此时,我们可以通过右下角的 添加 ...

  2. IOS 设置定时器

    IOS 设置定时器  自动滚动视图 定时发送坐标信息 即时显示 时钟 NSTimer *timer; - (void)start {//1second 调用一次 timer = [NSTimer sc ...

  3. iOS 设置代理过程

    iOS设置代理的过程 (以模拟 button 作用为例) 1.写协议 新建一个名为 MyButton 的文件,继承于 UIView,在该文件里 声明协议 myDelegate 2.写协议方法 为声明的 ...

  4. iOS设置状态栏样式

    iOS设置状态栏样式可以使用两种方式. 方式一: 直接在需要改变默认状态栏样式的控制器中实现一个方法(其他任何事情都不用做): // 返回状态栏的样式 - (UIStatusBarStyle)pref ...

  5. iOS设置拍照retake和use按钮为中文简体

    iOS设置拍照retake和use按钮为中文简体,设置有两种方式一个是代码直接控制,第二就是xcode配置本机国际化为“china”(简体中文). 本文重点要说的是第二种,这样配置有两个好处,一是操作 ...

  6. iOS 设置View阴影

    iOS 设置View投影 需要设置 颜色 阴影半径 等元素 UIView *shadowView = [[UIView alloc] init]; shadowView.frame = CGRectM ...

  7. iOS 设置UILabel 的内边距

    iOS 设置UILabel 的内边距 - (void)drawTextInRect:(CGRect)rect { UIEdgeInsets insets = {, , , }; [super draw ...

  8. iOS 设置app语言中文,比如 copy中文,拍照按钮cancel 中文

    iOS 设置app语言中文,比如 copy中文,拍照按钮cancel 中文 一:如何设置项目中文环境 targets--->Locatization native development reg ...

  9. iOS 设置字体样式

    1.iOS设置字体样式   label.font = [UIFont fontWithName:@"Arial-BoldItalicMT" size:24];   字体名如下: F ...

随机推荐

  1. 判断excel是否包含隐藏sheet

    Workbook workbook =new XSSFWorkbook("D:\\文档1.xlsx"); System.out.println(workbook.isSheetHi ...

  2. 运用反射时报错java.lang.NoSuchMethodException,以解决,记录一下

    问题:想调用service类中的私有方法时, Method target=clz.getMethod("say", String.class);用Class的getMethod报错 ...

  3. 微服务网关从零搭建——(一)创建测试api以及api自动注入consul

    本系列编写目的纯属个人开发记录  以下代码均为demo级 如有需要 请自行优化 代码完整包由于公司电脑加密 无法上传整包的demo文件 consul 开发环境简易处理 consul 下载地址 : ht ...

  4. JAVA基础——集合类汇总

    一.集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...

  5. JAVA基础——toString()方法

    toString()方法返回反映这个对象的字符串 因为toString方法是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”. 它通常只是为了方便输出,比如S ...

  6. JAVA基础——构造函数方法总结(有参构造和无参构造)

    使用构造器时需要记住: 1.构造器必须与类同名(如果一个源文件中有多个类,那么构造器必须与公共类同名) 2.每个类可以有一个以上的构造器 3.构造器可以有0个.1个或1个以上的参数 4.构造器没有返回 ...

  7. 小程序 textarea ios兼容解决

    今天遇到,在小程序里textarea会存在一定的兼容性问题,textarea有默认的内边距,在安卓和ios显示的时候,ios边距会比安卓的大很多. 解决办法: 通过 wx.getSystemInfoS ...

  8. 服务器的部署与Web项目的发布

    今天给老师的服务器部署项目,这次是第二次,基于第一次的经验,这次可以说是驾轻就熟. 服务器的系统是Windows Server 2008 R2 (64位) 需要安装的软件是:jdk7.TomCat7. ...

  9. 日本語 IME输入法(Microsoft 输入法)切换问题

    平假名 与 片假名之间的切换 按住 Ctrl + Caps Lock(平假名) 按住 Alt + Caps Lock(片假名) 另外:语言之间的切换 Alt + Shift 键 / Windows + ...

  10. java基数排序

    代码如下: import java.util.Arrays; public class MultiKeyRadixSort { public static void radixSort(int [] ...