Android中活动Activity方面的知识点


1、创建activity


2.配置AndroidManifest.xml文件

<application..

<activity android:name=".NewActivity"

android:label=".."

android:launchMode="standard/singleTop/singleTask/singleInstance">

<intent-filter>

    <!-- 程序入口 -->

    <action android:name="android.intent.action.MAIN" />

    <!--是否出现在启动页-->

             <category android:name="android.intent.category.LAUNCHER" />

         </intent-filter>

</activity>

</application>


launchMode:

standard:每次启动新的活动窗口(new操作)

singleTop:如果在栈顶是目标活动,则直接打开.否则开启新的活动窗口(new).

singleTask和singleInstance基本上相同.差别在于若根活动设置为singleTask时,则由此所开

启的活动也在同一任务中.而若根活动设置为singleInstance时,由此开启的活动在新的任务中.即

栈中只有一个活动.其余情况相同.


2.配置AndroidManifest.xml文件

<application..

<activity android:name=".NewActivity"

android:label=".."

android:configChanges="mcc|mnc"

android:launchMode="standard/singleTop/singleTask/singleInstance"/>

</application>


android:configChanges:

当所指定属性(Configuration Changes)发生改变时,通知程序调用

onConfigurationChanged()函数.


3.声明Activity权限(具有指定权限的组件才可调用)

<activity android:permission="cn.itcast.permission.secondwindow" />

<receiver android:permission="cn.itcast.permission.secondwindow" />


4.定义并使用权限

<permission android:name="cn.itcast.permission.secondwindow" />

<uses-permission android:name="cn.itcast.permission.secondwindow"/>


1.创建activity

XxxActivity extends Activity{...}


2.配置AndroidManifest.xml文件

<application..

<activity android:name=".NewActivity" android:label=".."

android:launchMode="standard/singleTop/singleTask/singleInstance"/>

</application>


3.打开新的activity(不需要返回值)

//显示意图

startActivity(new Intent(context,XxxActivity.class));

//传参数给意图

bundle = new Bundle();

bundle.setString(...);

intent.putExtra(bundle);

4.Intent中接受参数

conext.getIntent().getBundle().getString(..)

5.考察bundle类


3.为结果开始活动(startActivityForResult)

//1:请求码

startActivityForResult(new Intent(..),1);


4.处理返回后的结果

XxxActivity extends Activity{

...

//活动结束后,回调该方法

protected void onActivityResult(int reqCode,int resCode,Intent data) {

String result = data.getExtras().getString("result"));

}

   ...

}


5.设置意图的返回结果

Intent intent = new Intent();

intent.putExtra(..);

context.setResult(RESULT_OK, intent); 

context.finish();

相关内容