Android程序的入口点
------------------------------------
在AndroidManifest.xml中多个intent-filter属性,区分哪个是主入口:
http://zhidao.baidu.com/link?url=Y-DdRAoxfW8lREYhlaKie0UPlNfV9IJu27B24dEJBJtWNIg9rzcwPQRzZJPkgW3W6-exlZ-FZn_pnXov9uZ7jK
http://blog.sina.com.cn/s/blog_6261f869010187wi.html
Application
------------------------------------
在AndroidManifest.xml中多个intent-filter属性,区分哪个是主入口:
http://zhidao.baidu.com/link?url=Y-DdRAoxfW8lREYhlaKie0UPlNfV9IJu27B24dEJBJtWNIg9rzcwPQRzZJPkgW3W6-exlZ-FZn_pnXov9uZ7jK
http://blog.sina.com.cn/s/blog_6261f869010187wi.html
http://blog.csdn.net/wh_19910525/article/details/7941617
http://billyyuan.iteye.com/blog/1883866
http://blog.csdn.net/jdsjlzx/article/details/8523546
Application
-------------------------------------------------------
App的进程被创建的时候,Application的子类就会被实例化,onCreate方法就会被执行,给所有全局变量赋初期值。这样,所有的Activity就共同拥有这个类里面的变量了。Application这个包的onCreate才是真正的Android入口点
---------------------------
http://www.cnblogs.com/meizixiong/archive/2013/07/03/3170591.html
http://www.apkbus.com/forum.php?mod=viewthread&tid=78484
几个总结:
http://www.cnblogs.com/lwbqqyumidi/p/3776184.html
fragment生命周期
---------------------------------
fragment基础:
viewPager
-------------------------------
ViewPager预加载页数的问题setOffscreenPageLimit():
ViewPager默认预加载setOffscreenPageLimit(1);即当前页+-1(上一页,当前页,下一页)
App的进程被创建的时候,Application的子类就会被实例化,onCreate方法就会被执行,给所有全局变量赋初期值。这样,所有的Activity就共同拥有这个类里面的变量了。Application这个包的onCreate才是真正的Android入口点
http://blog.csdn.net/renguichao/article/details/7667245
http://www.cnblogs.com/renqingping/archive/2012/10/24/Application.html
http://blog.csdn.net/yaya_soft/article/details/16943811
调用Context的 getApplicationContext或者Activity的getApplication方法来获得一个application对象。
http://www.cnblogs.com/renqingping/archive/2012/10/24/Application.html
http://blog.csdn.net/yaya_soft/article/details/16943811
调用Context的 getApplicationContext或者Activity的getApplication方法来获得一个application对象。
退出 App (Exit):
任务与后退栈:Tasks and Back Stack;管理任务(开启一个activity是否要初始化多次等):Managing Tasks
http://developer.android.com/guide/components/tasks-and-back-stack.html
http://blog.csdn.net/guolin_blog/article/details/41087993
一个任务对应一个后退栈。一个应用可以存在多个task,当一个task调用另一个task(要开启另一个task中声明为
singleInstance的activity
),两个task的后退栈合并为一个back stack。
在Intent中设置启动方式优先于在manifest中设置。
任务/后退栈的启动模式
包含了以下翻译:
Activity四种启动模式
---------------------------
http://www.cnblogs.com/meizixiong/archive/2013/07/03/3170591.html
http://www.apkbus.com/forum.php?mod=viewthread&tid=78484
Activity Intent跳转Flag详解
-----------------------------------
http://my.oschina.net/u/1244156/blog/228483
-----------------------------------
http://my.oschina.net/u/1244156/blog/228483
FLAG_ACTIVITY_NEW_TASK同Launch mode设置成singleTask
FLAG_ACTIVITY_CLEAR_TOP是特有的
FLAG_ACTIVITY_SINGLE_TOP同Launch mode的singleTop
Activity的其他属性:
http://blog.csdn.net/lincyang/article/details/6893852
activity生命周期
-----------------------------------
android onpostcreate()什么情况下执行:
当Activity彻底运行起来之后回调onPostCreate方法,从官方解释可以看出 "Called when activity start-up is complete (after onStart() and onRestoreInstanceState(Bundle) have been called)."
FLAG_ACTIVITY_CLEAR_TOP是特有的
FLAG_ACTIVITY_SINGLE_TOP同Launch mode的singleTop
Activity的其他属性:
http://blog.csdn.net/lincyang/article/details/6893852
activity生命周期
-----------------------------------
android onpostcreate()什么情况下执行:
当Activity彻底运行起来之后回调onPostCreate方法,从官方解释可以看出 "Called when activity start-up is complete (after onStart() and onRestoreInstanceState(Bundle) have been called)."
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1022/1824.html
通用生命周期流程如下:
正常启动 onCreate onStart onPostCreate onResume onPostResume
转向下一个activity onPause onStop
从下一个activity返回当前(按机器返回键)onRestart onStart onResume onPostResume
转向上一个activity(按机器返回键)onPause onStop onDestory
屏幕待机(黑掉)onPause
屏幕变亮 onResume onPostResume
Home键退出 onPause onStop
Home键导航返回 onRestart onStart onResume onPostResume
旋转屏幕 onPause onStop onDestory onCreate onStart onPostCreate onResume onPostResume
onNewIntent()执行:
onNewIntent只有在以下场景才会回调: 当前通过Intent方式启动的Activity不是重新完整新建实例,而是复用之前已经存在的实例 (如被设置了singleTop启动模式,或FLAG_ACTIVITY_SINGLE_TOP intent flags或设置了Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP等,以此类推,被设置了singleTask或single。此时都会执行到onNewIntent)。onNewIntent调用后,将继续回调onRestart,onResume...
http://gundumw100.iteye.com/blog/2160467
http://blog.csdn.net/lvxiangan/article/details/8591536
http://blog.csdn.net/findsafety/article/details/9664061
onWindowFocusChanged方法:
当Activity的当前Window获得或失去焦点时会被回调此方法。当回调了这个方法时表示Activity是完全对用户可见的(只是可见,还一片黑呼呼的,有待draw..)。当对话框弹起/消失及Activity新创建及回退等都会调用此方法。
相比之下,onResume()方法更多的是指Activity进入了可见的状态,但只是状态,并不是真正的界面构建完成了。
也就是说 如果你想要做一个Activity一加载完毕,就触发什么的话 完全可以用这个。
通用生命周期流程如下:
正常启动 onCreate onStart onPostCreate onResume onPostResume
转向下一个activity onPause onStop
从下一个activity返回当前(按机器返回键)onRestart onStart onResume onPostResume
转向上一个activity(按机器返回键)onPause onStop onDestory
屏幕待机(黑掉)onPause
屏幕变亮 onResume onPostResume
Home键退出 onPause onStop
Home键导航返回 onRestart onStart onResume onPostResume
旋转屏幕 onPause onStop onDestory onCreate onStart onPostCreate onResume onPostResume
onNewIntent()执行:
onNewIntent只有在以下场景才会回调: 当前通过Intent方式启动的Activity不是重新完整新建实例,而是复用之前已经存在的实例 (如被设置了singleTop启动模式,或FLAG_ACTIVITY_SINGLE_TOP intent flags或设置了Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP等,以此类推,被设置了singleTask或single。此时都会执行到onNewIntent)。onNewIntent调用后,将继续回调onRestart,onResume...
http://gundumw100.iteye.com/blog/2160467
http://blog.csdn.net/lvxiangan/article/details/8591536
http://blog.csdn.net/findsafety/article/details/9664061
onWindowFocusChanged方法:
当Activity的当前Window获得或失去焦点时会被回调此方法。当回调了这个方法时表示Activity是完全对用户可见的(只是可见,还一片黑呼呼的,有待draw..)。当对话框弹起/消失及Activity新创建及回退等都会调用此方法。
相比之下,onResume()方法更多的是指Activity进入了可见的状态,但只是状态,并不是真正的界面构建完成了。
也就是说 如果你想要做一个Activity一加载完毕,就触发什么的话 完全可以用这个。
http://www.cnblogs.com/lijunamneg/archive/2013/01/19/2867532.html
http://www.xuebuyuan.com/1587193.html
http://blog.csdn.net/pi9nc/article/details/9237031
android:noHistory :
http://www.open-open.com/lib/view/open1409298323728.html
http://www.cnblogs.com/zhengbeibei/archive/2013/03/21/2972754.html
onBackPressed():
http://blog.csdn.net/gf771115/article/details/5842190
http://malong26.iteye.com/blog/1539957
http://blog.csdn.net/dalancon/article/details/12042833
onConfigurationChanged():
http://www.cnblogs.com/lijunamneg/archive/2013/03/26/2982461.html
http://blog.sina.com.cn/s/blog_6a528c550101djjw.html
http://www.cnblogs.com/bluestorm/p/3622444.html
http://blog.csdn.net/xiaodongvtion/article/details/6799386
http://www.xuebuyuan.com/1587193.html
http://blog.csdn.net/pi9nc/article/details/9237031
android:noHistory :
http://www.open-open.com/lib/view/open1409298323728.html
http://www.cnblogs.com/zhengbeibei/archive/2013/03/21/2972754.html
onBackPressed():
http://blog.csdn.net/gf771115/article/details/5842190
http://malong26.iteye.com/blog/1539957
http://blog.csdn.net/dalancon/article/details/12042833
onConfigurationChanged():
http://www.cnblogs.com/lijunamneg/archive/2013/03/26/2982461.html
http://blog.sina.com.cn/s/blog_6a528c550101djjw.html
http://www.cnblogs.com/bluestorm/p/3622444.html
http://blog.csdn.net/xiaodongvtion/article/details/6799386
onAttachedToWindow:
http://blog.csdn.net/eyu8874521/article/details/8493995
http://blog.csdn.net/guxiao1201/article/details/41517871
几个总结:
http://www.cnblogs.com/lwbqqyumidi/p/3776184.html
fragment生命周期
---------------------------------
fragment基础:
注意,看使用的是v4包中的fragment还是普通的fragment,v4包中开启fragment的是通过调用supportFragmentManager,普通的是FragmentManager
http://www.cnblogs.com/xinye/archive/2012/08/28/2659712.html
http://blog.csdn.net/guolin_blog/article/details/8881711
http://blog.csdn.net/guolin_blog/article/details/8881711
http://www.cnblogs.com/mengdd/archive/2013/01/08/2851368.html
fragment 是依附在activity上的, 必须要有activity才能启用,Fragment必须嵌入Activity中使用,需要 FragmentActivity 来载它。 Fragment的生命周期方法依赖于Activity的生命周期。
http://blog.csdn.net/forever_crying/article/details/8238863/
http://www.cnblogs.com/mengdd/archive/2013/01/08/2851368.html
http://www.cnblogs.com/mybkn/articles/2455142.html
setUserVisibleHint():
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1021/1813.html
http://www.cnblogs.com/lee0oo0/p/3713391.html
权限泄露的问题isValidFragment():
http://blog.csdn.net/l173864930/article/details/17279165
http://www.2cto.com/Article/201401/270936.html
fragment监听后退键:
fragment 是依附在activity上的, 必须要有activity才能启用,Fragment必须嵌入Activity中使用,需要 FragmentActivity 来载它。 Fragment的生命周期方法依赖于Activity的生命周期。
http://blog.csdn.net/forever_crying/article/details/8238863/
http://www.cnblogs.com/mengdd/archive/2013/01/08/2851368.html
http://www.cnblogs.com/mybkn/articles/2455142.html
setUserVisibleHint():
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1021/1813.html
http://www.cnblogs.com/lee0oo0/p/3713391.html
权限泄露的问题isValidFragment():
http://blog.csdn.net/l173864930/article/details/17279165
http://www.2cto.com/Article/201401/270936.html
fragment监听后退键:
http://stackoverflow.com/questions/22552958/handling-back-press-when-using-fragments-in-android
http://stackoverflow.com/questions/22550420/how-to-handle-back-event-in-drawer-list-fragment-in-android-activity/22550460#22550460
http://stackoverflow.com/questions/7992216/android-fragment-handle-back-button-press
http://blog.csdn.net/guxiao1201/article/details/40507387
http://vinsol.com/blog/2014/10/01/handling-back-button-press-inside-fragments/
http://blog.csdn.net/harvic880925/article/details/45013501
http://www.cnblogs.com/LIANQQ/p/3662828.html
http://developer.android.com/training/basics/fragments/communicating.html
fragment中选择哪种adapter更合适:
FragmentPagerAdapter/FragmentStatePagerAdapter都是继承PagerAdapter
http://www.cnblogs.com/lianghui66/p/3607091.html
http://blog.csdn.net/kaiwii/article/details/7823613
http://blog.sina.com.cn/s/blog_783ede03010173b4.html
http://blog.csdn.net/z13759561330/article/details/40737381
复用存在的fragment:
http://www.yrom.net/blog/2013/03/10/fragment-switch-not-restart/
http://blog.csdn.net/lmj623565791/article/details/37970961
viewPager
-------------------------------
ViewPager预加载页数的问题setOffscreenPageLimit():
ViewPager默认预加载setOffscreenPageLimit(1);即当前页+-1(上一页,当前页,下一页)
setOffscreenPageLimit(0);不要预加载其他页,只加载当前页。
setOffscreenPageLimit(2);即当前页+-2
http://blog.csdn.net/ygc87/article/details/7428780
http://blog.csdn.net/icyfox_bupt/article/details/18356461
http://www.apkbus.com/android-160942-1-1.html
按照想要的效果修改源码:
http://blog.csdn.net/jielundewode/article/details/41866577
view
---------------------------------
view的onFinishInflate()何时调用的?
当View中所有的子控件均被映射成xml后触发;
MyView mv = (MyView)View.inflate (context,R.layout.my_view,null);
当加载完成xml后,就会执行那个方法;
我们一般使用View的流程是在onCreate中使用setContentView来设置要显示Layout文件或直接创建一个View,在当设置了ContentView之后系统会对这个View进行解析,然后回调当前视图View中的onFinishInflate方法。只有解析了这个View我们才能在这个View容器中获取到拥有Id的组件,同样因为系统解析完View之后才会调用onFinishInflate方法,所以我们自定义组件时可以onFinishInflate方法中获取指定子View的引用。
View.onVisibilityChanged方法,就是提供了一个状态模式的实现,允许在View的visibility发生改变时,引发执行onVisibilityChanged方法中的动作。
http://blog.csdn.net/a345017062/article/details/7904649
viewGroup:
http://blog.csdn.net/tangxuankai/article/details/22282975
setOffscreenPageLimit(2);即当前页+-2
http://blog.csdn.net/ygc87/article/details/7428780
http://blog.csdn.net/icyfox_bupt/article/details/18356461
http://www.apkbus.com/android-160942-1-1.html
按照想要的效果修改源码:
http://blog.csdn.net/jielundewode/article/details/41866577
view
---------------------------------
view的onFinishInflate()何时调用的?
当View中所有的子控件均被映射成xml后触发;
MyView mv = (MyView)View.inflate (context,R.layout.my_view,null);
当加载完成xml后,就会执行那个方法;
我们一般使用View的流程是在onCreate中使用setContentView来设置要显示Layout文件或直接创建一个View,在当设置了ContentView之后系统会对这个View进行解析,然后回调当前视图View中的onFinishInflate方法。只有解析了这个View我们才能在这个View容器中获取到拥有Id的组件,同样因为系统解析完View之后才会调用onFinishInflate方法,所以我们自定义组件时可以onFinishInflate方法中获取指定子View的引用。
View.onVisibilityChanged方法,就是提供了一个状态模式的实现,允许在View的visibility发生改变时,引发执行onVisibilityChanged方法中的动作。
http://blog.csdn.net/a345017062/article/details/7904649
viewGroup:
http://blog.csdn.net/tangxuankai/article/details/22282975