第一行代码+Android+第2版 笔记第二天下午

来源:互联网 发布:js模拟点击事件 编辑:程序博客网 时间:2024/04/27 21:03

活动被回收了怎么办?

Activity中的onSaveInstanceState()方法:保证活动在回收前一定被调用;->用这个方法解决活动被回收时临时数据得不到保存的问题;

 

Intent结合Bundle一起传递数据:

    首先把需要传递的数据保存在Bundle对象中;

    再将Bundle对象存放到Intent里;

    到了目标活动之后,先从Intent中取出Bundle;

    再从Bundle中一一取出数据;

 

活动的启动模式:在AndroidManifest.xml中给<activity>标签指定android:launchMode来选择启动模式和;

     1standard:默认;每点击一次会创建一个新的实例;

     2singleTop:实例已存在,如果在栈顶,则不会创建多的实例;

     3singleTask:启动活动时,会先检查是否存在该活动的实例,已存在则直接使用,否则创建一个新的。

     4singleInstance:

 

如何:随时随地退出程序?

    解决思路:创建一个专门的集合类,对所有的活动进行管理;

 

杀掉当前程序的进程的代码如下:

    android.os.Process.killProcess(android.os.Process.myPid());

 

启动活动的最佳写法

 

Android控件的可见属性:所有的Android控件都具有这个属性:

    visibility:默认值,可见的;setVisiblity(View.VISIBLE)

    invisible:控件不可见,但扔占位置;

    gone:控件不可见,不占位置;

 

AlertDialog:在当前界面弹出一个对话框,置顶于所有界面元素之上,能屏蔽掉其他控件的交互能力;

ProgressDialog:同上,多一个进度条;

 

LinearLayout:线性布局;

    android:orientation-》垂直方向:vertical;水平方向:horizontal

android:gravity->指定文字在控件中的对齐方式;

android:layout_gravity->指定控件在布局中的对齐方式;

android:layout_weight->使用比例的方式指定控件的大小;

dp是Android中用于指定控件打下、间距等属性的单位;

EditText和Button里都将android:layout_weight属性的值指定为1,表示将在水平方向平分宽度;

 

RelativeLayout:相对布局

 

FrameLayout:帧布局

 

引入布局:

每个活动的布局中都编写一遍同样的标题栏代码,会导致代码大量重复;

->通过引入布局的方式来解决这个问题;

 

如何在程序中使用这个标题栏:<includelayout=”@layout/title” />

 

在MainActivity中将系统自带的标题栏隐藏掉:

ActionBar actionbar =getSupportActionBar();//获得ActionBar的实例

if (actionbar != null) {actionbar.hide() }

 

创建自定义控件:布局中有一些控件要求能响应事件,在每个活动中一样。使用自己定义控件的方式来解决;

 

 

 

微信:yc616671553

 


领取



第一行代码+Android+第2版 PDF版本

 

 

原创粉丝点击