lol盒子重点内容

//AFN函数 — imageview加载网络图片并且获取图片,获取之后存储到手机

[image
setImageWithURLRequest:[NSURLRequest
requestWithURL:[NSURL
URLWithString:[NSString
stringWithFormat:@"%@",skin.bigImg]]
] placeholderImage:nil
success:^(NSURLRequest
*request,
NSHTTPURLResponse *response,
UIImage *image) {

UIImageWriteToSavedPhotosAlbum(image,
self,
@selector(image:didFinishSavingWithError:contextInfo:),
nil);

- (void)image:(UIImage
*)image didFinishSavingWithError:(NSError
*)error contextInfo:(void
*)contextInfo

{

if
(error) {

[self
showToastWithText:@"不允许保存"];

}else{

[self
showToastWithText:@"保存成功"];

}

}

_player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:file] error:nil];

//            NSLog(@"%@",[NSURL fileURLWithPath:file]);

//            [_player play];

//audioplayer第三方类库播放文件

AudioPlayer
*player = [AudioPlayer
sharePlayer];

[player
playWithDataSourceType:DataSourceTypeLocal
withURLString:file];

   
//下载文件

NSString
*string = [NSString
stringWithFormat:HERO_SOUND_DESC_URL,pathName,fileName];

NSURL
*url = [NSURL
URLWithString:[string
stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

NSURLRequest
*request = [NSURLRequest
requestWithURL:url];

AFHTTPRequestOperation
*operation = [[AFHTTPRequestOperation
alloc]
initWithRequest:request];

operation.inputStream
= [NSInputStream
inputStreamWithURL:url];

operation.outputStream
= [NSOutputStream
outputStreamToFileAtPath:file
append:NO];

[operation
setCompletionBlockWithSuccess:^(AFHTTPRequestOperation
*operation,
id responseObject) {

NSLog(@"下载成功");

[_tableview
reloadData];

} failure:^(AFHTTPRequestOperation
*operation,
NSError *error) {

NSLog(@"下载失败");

}];

[operation
start];

//在停止滑动的时候将scrollview的缩放变为1倍

-(void)scrollViewDidEndDecelerating:(UIScrollView
*)scrollView

{

_pageIndex = scrollView.contentOffset.x/SCREEN_WIDTH;

for
(UIScrollView
*scrollview
in scrollView.subviews)

{

if
([scrollview isKindOfClass:[UIScrollView
class]]) {

[scrollview
setZoomScale:1.0];

}

}

HeroSkin
*skin = [_heroskin
objectAtIndex:_pageIndex];

_namelabel.text
= skin.name;

_pricelabel.text
= skin.price;

_pagelabel.text
= [NSString
stringWithFormat:@"%ld of %lu",_pageIndex+1,(unsigned
long)_heroskin.count];

NSLog(@"%ld",(long)_pageIndex);

}

//图片摇动

-(void)ImageShake

{

CABasicAnimation
*basic = [CABasicAnimation
animationWithKeyPath:@"transform.rotation.z"];

basic.fromValue
= [NSNumber
numberWithFloat:-M_PI/16];

basic.toValue
= [NSNumber
numberWithFloat:M_PI/16];

basic.duration
=
0.1;

basic.repeatCount
=
3;

[imageview.layer
addAnimation:basic
forKey:@"animateLayer"];

//震动一次

AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

}

//检测motion

-(void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent
*)event

{

if
(motion == UIEventSubtypeMotionShake) {

[self
ImageShake];

[player
play];

}

}

//计算string字符串的frame大小

-(CGSize)getStringRect:(NSString
*)str

{

if
(str.length<1) {

return
CGSizeMake(0,
0);

}

CGSize
size;

NSAttributedString
*string = [[NSAttributedString
alloc]initWithString:str];

//    NSDictionary *attribute= @{NSFontAttributeName:@12};

size = [string boundingRectWithSize:CGSizeMake(280,
500)
options:NSStringDrawingTruncatesLastVisibleLine
|

NSStringDrawingUsesLineFragmentOrigin
|

NSStringDrawingUsesFontLeading
context:nil].size;

return
size;

}

-(CGFloat)caculateLabelHeightWith:(float)fontsize
String:(NSString
*)str

{

UIFont
*font = [UIFont
systemFontOfSize:fontsize];

CGSize
size = CGSizeMake(300,700);

CGSize
descriptionSize = [str
sizeWithFont:font
constrainedToSize:size
lineBreakMode:NSLineBreakByWordWrapping];

return
descriptionSize.height;

}

时间: 2024-08-12 07:41:09

lol盒子重点内容的相关文章

Android培训Android课堂重点内容汇总

Android培训Android课堂重点内容汇总 一.Android Introduction Android 是一个允许你在java环境下为手机设备开发应用和游戏的提供丰富应用框架. 二.四大组件 1.Activity (1)定义:提供给用户一个与app进行交互的UI界面的组件 (2)创建 //步骤 (1 继承Activity或者其子类 (2 必须实现OnCreate() (3 OnCreate()实现SetContentView(),为这个Activity提供的窗口,添加layout(布局)

文本超出盒子的内容用省略号代替

实现的方法:给div添加属性overflow:hidden; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; 是让超出盒子的内容隐藏: white-space:nowrap; 让盒子右端的内容不能换行显示,则盒子的内容就在水平方向上溢出了: text-overflow:ellipsis;可以在盒子的末尾显示一个省略的符号“...”,但是这个属性只是在盒子中的内容在水平方向上超出盒子的范围时有效 例子: <div> 段落段

第二周Linux重点内容

第4天3A认证 授权 审计authentication authorization accouting aduition root :管理员Linux 组: groupname gid 管理员组 root other Linux安全上下文进程(process) 进程访问资源的权限取决于运行者的身份管理员 (root) /bin/cat (所有用户都能使用) /root/.bashrc判断:1使用工具 2 使用文件 [[email protected] ~]#ll /bin/cat-rwxr-xr

Postman 官网教程,重点内容,翻译笔记,

json格式的提交数据需要添加:Content-Type :application/x-www-form-urlencoded,否则会导致请求失败 1. 创建 + 测试: 创建和发送任何的HTTP请求,请求可以保存到历史中再次执行2. Organize: 使用Postman Collections为更有效的测试及集成工作流管理和组织APIs3. document: 依据你创建的Clollections自动生成API文档,并将其发布成规范的格式4. collarorate: 通过同步连接你的tea

css ie6盒子无内容问题

在实际工作中有时候<li>元素前面需要带有小方块.虽然list-style: square;可以显示,但是大小不太好控制. 所以选用 div{width:2px;height:2px;background:#000;position:absolute;top:10px;left:-10px;} 但是ie6里面会变成长方形,此时加上 font-size:2px; 会变成方块. 如果ie6中有空内容的块元素高度出现问题,不妨试一下加上这个属性.

MySQL重点内容:查询语句、名称解析

MariaDB安装方式:包管理器(rpm, deb)通用二进制格式:源码编译安装:SQL:数据库.表.索引.视图.存储过程.存储函数.触发器.事件调度器.用户和权限:元数据数据库:库名为mysqlMYSQL语句:有2种DDL, DMLDDL: CREATE, ALTER, DROPDML: INSERT, DELETE, UPDATE, SELECTDCL: GRANT(授权), REVOKE(撤销授权)MariaDB程序的组成:C/S架构C:Clientmysql:CLI交互式客户端程序:my

重点内容——封装函数

<?php /** * 数据库连接函数 * @param array $arr 数据库连接需要的相关参数 * */function my_connect($arr) { // 接收参数 $host = isset($arr['host']) ? $arr['host'] : 'localhost'; $port = isset($arr['port']) ? $arr['port'] : '3306'; $user = isset($arr['user']) ? $arr['user'] : '

JAVA OO重点内容之 多态 接口

JAVA OO中 继承 封装 多态 抽象被命为面向对象编程的四大基础特征 封装隐藏了类的内部实现机制 从而可以在不影响使用者的前提条件下 改变类的内部结构 ,同时保护了数据 继承是为了重用父类代码 多态是指一个对象有多种形式的能力 一个类的子类可以定义他们唯一的行为 ,同时共享父类的某些相同特征. 具体来说多态可以理解为: 1.第一种是对象的不同方法可以用相同的方法名,也就是重载的概念 .(重载是指:在一个类里面 方法名相同 参数列表不同) 2.同一对象根据不同的消息执行相应的行为 ,也可以认为

day1 练习及重点内容

一.练习题1.简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释型 编译形语言是通过编译器直接转换成2进制代码,给计算机直接运行2进制文件.(c c++) 解释形语言是先转成中间格式(字节码),再由解释器读一句编译一句交给计算机.(java VBscript perl python) 2.执行 Python 脚本的两种方式是什么 交互模式:便于调试 脚本文件模式:可保存,运行"python 脚本文件" 3.Pyhton 单行注释和多行注释分别用什么? 单行