仓酷云

标题: IOS编程:Android摇摆革新有用教程仓酷云 [打印本页]

作者: 谁可相欹    时间: 2015-1-18 11:32
标题: IOS编程:Android摇摆革新有用教程仓酷云
视图是仪表盘模型是发动机控制器是控制芯片CoreData---管理数据OBJC刚学的时候觉得CD很高深其实他是最容易用的库之一这篇文章我们就来切磋另外一种App革新的体例,就叫“摇摆革新”吧。尽人皆知,下拉革新体例已有良多App在用了,只需手指在屏幕上滑动,就能够革新界面了。
IOS编程:Android摇摆革新有用教程仓酷云
登录/注册后可看大图

<br>
只管下拉革新体例很有用,不外我们还可使用其余体例来革新界面,也就是基于智妙手机传感器的摇摆革新。如许就不必滑下手指,只需摇摆手机就能够革新界面:
IOS编程:Android摇摆革新有用教程仓酷云
登录/注册后可看大图

<br>
完成办法

为了完成摇摆革新功效,这里必要利用重力减速器(Accelerometer),若必要懂得更多关于怎样利用重力减速器的体例请看这里
起首,必要包管在摇摆革新大概挪动手机的时分不会产生误操纵,这里必要完成对传感器的把持,包管捕抓到的是用户想要的动摇操纵。别的,我们在完成这个逻辑操纵的时分必要和UI的代码分别,倡议不要把界面逻辑代码和别的的代码混同在一同,把它自力出来便利重用。以是起首新建一个ShakeEventManager类,这个类必要对传感器事务举行监听:
1
2
3
publicclassShakeEventManagerimplementsSensorEventListener{
..
}

为了监听传感器,这里完成了SensorEventListener接口,然后就要操纵重力减速度传感器,把我们写的这个类注册成事务监听器:
1
2
3
4
5
publicvoidinit(Contextctx){
sManager=(SensorManager)ctx.getSystemService(Context.SENSOR_SERVICE);
s=sManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
register();
}

接实在现register()办法:
1
2
3
publicvoidregister(){
sManager.registerListener(this,s,SensorManager.SENSOR_DELAY_NORMAL);
}

在触发革新事务的时分,必要对一些前提举行检测,以包管用户是成心在动摇手机:

这里把这个完成逻辑代码写在onSensorChanged办法里,这个办法在减速器的值无效的时分城市被挪用。第一步要盘算这个减速度的值。这里还必要晓得三个坐标的最年夜减速度值,然后减往重力的值在三个偏向上的份量。像Android官方教程文档中申明的那样,起首举行一层过滤,把重力的份量减失落,然后在举行别的的坐标份量处置:
1
2
3
4
5
6
7
8
9
10
11
12
privatefloatcalcMaxAcceleration(SensorEventevent){
gravity[0]=calcGravityForce(event.values[0],0);
gravity[1]=calcGravityForce(event.values[1],1);
gravity[2]=calcGravityForce(event.values[2],2);
floataccX=event.values[0]-gravity[0];
floataccY=event.values[1]-gravity[1];
floataccZ=event.values[2]-gravity[2];
floatmax1=Math.max(accX,accY);
returnMath.max(max1,accZ);
}

看看calcGravityForce这个办法:
<p>1
2
3
4
//Lowpassfilter
<p>privatefloatcalcGravityForce(
作者: 简单生活    时间: 2015-1-21 09:45
自从苹果公司开放iOS SDK以来,大量的国内外的软件开发者将关注的目光聚集在苹果的iOS平台上。由于iPhone和iPad自一出现就给人带来了颠覆性的感觉
作者: 飘灵儿    时间: 2015-1-23 15:18
iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。
作者: 金色的骷髅    时间: 2015-1-24 16:51
AD: iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。
作者: 灵魂腐蚀    时间: 2015-2-2 11:15
down下code4app网站的每个分类的代码挨着看
作者: admin    时间: 2015-2-22 22:12
在百度搜索你想要了解的类名(苹果的cocoa和cocoatouch框架的类名很有特点很容易搜到,前缀都是NS or UI),看别人写的博客详解
作者: 柔情似水    时间: 2015-2-28 17:23
开始的时候甚至想放弃,不过想想自己的未来,只能咬牙坚持,课下就不停的缠着老师。放学就补基础,这些基础的东西没有速成的,只有刻苦努力。我是后来发现的,转变自己的心态,不要读书看资料当成一种痛苦
作者: 若相依    时间: 2015-3-2 23:55
这个办法就是在WindowsXP或Win7的电脑上,使用vmware虚拟机来搭建一个真实的Mac OS X环境。
作者: 若天明    时间: 2015-3-9 16:25
中国如今已然发展成为一个软件大国,软件人才的数量跃居全球之首。当然,在苹果平台的开发领域,也保持了相当强劲的发展势头。然而,很多初入iOS开发门槛的开发者,
作者: 老尸    时间: 2015-3-10 04:09
特别是在校的学生,都存在一个小小的尴尬——虽然学习iOS开发的热情高涨,但由于没有多余的银子购买昂贵的Mac电脑而踟蹰不前。其实,针对初学者,如果想进入iOS开发的天地
作者: 深爱那片海    时间: 2015-3-11 10:21
这个办法就是在WindowsXP或Win7的电脑上,使用vmware虚拟机来搭建一个真实的Mac OS X环境。
作者: 飘飘悠悠    时间: 2015-3-11 16:48
以上可以同时进行,学习过程中尽量不要纠结细节和底层,要知道ios是封闭的、OC是高级语言,我们不可能过多地去了解它的原理,至少在新手阶段没有必要。用迭代的方式更新你的知识,而不是死抠一个知识点。
作者: 第二个灵魂    时间: 2015-3-18 08:08
还有开发工具是用Xcode,是在Mac系统的,你多摸索一下就可以开发简单的应用了,建议你买一本iphone开发秘籍第二版看看,希望可以帮到你,谢谢。
作者: 活着的死人    时间: 2015-3-21 21:12
特别是在校的学生,都存在一个小小的尴尬——虽然学习iOS开发的热情高涨,但由于没有多余的银子购买昂贵的Mac电脑而踟蹰不前。其实,针对初学者,如果想进入iOS开发的天地
作者: 透明    时间: 2015-4-7 12:56
iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。
作者: 蒙在股里    时间: 2015-4-14 05:00
众多研发人员积极参与到iOS平台的开发中来也就不足为奇了。
作者: 变相怪杰    时间: 2015-6-10 14:38
还有开发工具是用Xcode,是在Mac系统的,你多摸索一下就可以开发简单的应用了,建议你买一本iphone开发秘籍第二版看看,希望可以帮到你,谢谢。
作者: 兰色精灵    时间: 2015-6-12 06:56
近期由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来,
作者: 不帅    时间: 2015-6-27 01:24
iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2