Android初学笔记(记录自己的学习过程,有不对的地方欢迎指出)

1. Activity必须继承自Activity父类,并且在AndroidManifest.xml中注册。注册标签<activity></activity>,必须有属性android:name,其值为<menifest标签中package属性值的后半部分。

2. 注册Activity时,可以指定应用程序打开时默认开启哪一个Activity,在<activity></activity>标签中增加字标签
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

只有一个Activity可以指定为应用启动首选Activity。

3. Activity之间传递参数,使用Intent对象,该对象提供了extras方式的键值对参数传递方式。
Intent i = new Intent();
i.setClass(当前Activity对象,启动的Activity类);
i.putExtras("key", "value");
startActivity(i);

4. 关于Menu菜单,

点击Menu按钮,触发onCreateOptionsMenu(Menu menu) 方法
点击Menu菜单的某一个选项时,触发onOptionsItemSelected(MenuItem item)方法

5. Activity的生命周期函数
分别包含:onCreate、onStart、onRestart、onResume、onPause、onStop、onDestroy七个生命周期函数

当一个Activity启动时,分别会调用onCreate、onStart、onResume方法,此时启动另外一个Activity时,第二个Activity的onCreate、onStart、onResume方法,第一个Activity的onStop方法。

当第一个Activity不可见时,会调用onStop方法。如果第二个Activity没有把第一个Activity完全遮挡,不会调用第一个Activity的onStop方法。

onDestroy,明确调用Activity的finish()方法,会调用;当android系统资源不足够,而某个Activity已经处于不可见状态,那么该Activity执行onDestroy方法。

6. Activity中对话框形式的Activity的表示形式,在配置文件AndroidMenifest.xml中,声明Activity时,增加属性:android:theme="@android:style/Theme.Dialog"

7. Activity的布局形式,有线性布局:LinearLayout、表格形式的布局TableLayout
两者可以互相嵌套形成复杂的布局形式。

android:orientation属性,用来表示线性布局中控件的排序方式,横向或者纵向,横向的属性值为horizontal,纵向的属性值为vertical

android:layout_weight属性,用来表示该layout占用整个activity的比重,举个例子:有2个layout,一个属性值为2,一个为1,那么第一个占activity的2/3,第二个占1/3。

猜你喜欢

转载自jackeysion.iteye.com/blog/2194062