|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
管理你的ViewController的层次可以自己写View切换的动画关掉他默认的动画文档:还有个蛋疼的UIWindow都快忘了他了因为iOS是从MacosX过来的很多工具直接拿来用这个UIWindow就是在iOS里每个App独占屏幕所以同时存在的只有一个UIWindow比来,在Sixt(德国对照年夜的一个汽车租赁网站)上,我们把我们的开辟情况从Eclipse迁徙到AndroidStudio。这也就意味着我们进进了新的编译体系——Gradle,而且把TDD(测试驱动开辟)和CI(延续集成)归入我们的软件开辟流程。这里不是会商在软件开辟中引进CI会带来如何的优点,而是会商在Android中当测试UI以外的线程时会呈现的成绩。
Android中的测试(广泛的界说)是一个单位测试汇合的扩大。触及初始化、封闭测试,包括setUp()和tearDown()操纵,利用反射的体例揣度出分歧的测试体例(从JUnit4入手下手我们就能够利用正文来指定的优先级和实行一切测试)。一个典范的测试布局以下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
publicclassMyManagerTestextendsActivityTestCase{
publicMyManagerTest(Stringname){
super(name);
}
protectedvoidsetUp()throwsException{
super.setUp();
}
protectedvoidtearDown()throwsException{
super.tearDown();
}
publicvoidtestDummyTest(){
fail("Failingtest");
}
}
这是一个十分分明的示例:实践开辟中,我们想要测试比方HTTP呼应、SQL存储等等。在Sixt我们服从一种Manager/Model办法:每一个Model包括一个实体(车、主顾等)的体现。每一个Manager用分歧的模子(比方,我们的LoginManager大概必要用户与之交互的模子)聚分解一套功效。
年夜多半的Manager会合实行HTTP哀求是要从背景猎取数据。比方,我们用上面的代码来实行用户的登录:
1
2
3
4
5
6
7
8
9
10
11
mLoginManager.performLoginWithUsername("username","password",newOnLoginListener(){
@Override
publicvoidonFailure(Throwablethrowable){
fail();
}
Override
publicvoidonSuccess(Usercustomer){
//..
}
});
NSStringNSArrayNSDictionary等这些工具在所有的框架里都会出现iOS大部分类都是继承自NSObject(我还没见过不是继承自NSObject的..) |
|