• Android的活动Activity


    AndroidManifest.xml:所有四大组件都需要在这里注册

    活动(Activity类):活动即每个界面的后台逻辑,前端界面为layout的xml文件。所有的活动都要继承于Activity类。

    一、活动的注册

    <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme">
            <activity
                android:name=".当前活动类名"
                android:label="标题栏内容"
                android:icon="引用图片名(即设置应用图标)"
                android:launchMode="启动类型">
                <intent-filter>    //此标签可复制设置主活动
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
    
        </application>

    二、活动的启动类型

            standard(默认):每次启动活动都创建一个新的实例

            singleTop:当栈顶活动为该活动时不会创建新的示例

            singleTask(推荐):当栈里有该活动时,不会创建新的实例,将该活动之上的活动都出栈

            singleInstance:在有其它应用想使用是使用(即共享活动)

                                    创建一个单独的栈来管理活动

            

    三、活动类经常使用的方法

        super.onCreate(Bundle):创建活动时加载临时数据

        requestWindowFeature(Window.FEATURE_NO_TITLE):取消标题栏,必须在setContentView()前执行,不然报错

        setContentView(R.layout.布局名):给活动加载布局

        startActivity(Intent):通过Intent启动活动

        startActivityForResult(Intent,int):通过Intent启动活动,int为请求码(自己设定),被启动活动销毁后会返回数据给上一活动,

                                                            上一活动会自调用onActivityResult()方法 会自动调用onActivityResult()方法

        setResult(Result,Intent):Result为Result_OK或Result_CANCELED用来向上一活动返回处理结果,Intent用来装返回数据

        getIntent():获取启动当前活动的Intent

        findViewById(R.id.id名):获取在布局文件中的元素,如:控件

    四、活动类可重写的方法

        活动的状态函数:onXXX(),如:onCreate(),重写时必须在第一行调用super.onXXX(),如:super.onCreate(Bundle);

        onActivityResult(int requestCode,int result,Intent data): requestCode为请求吗,result为Result为Result_OK或

                                                                                                  Result_CANCELED,data为被启动活动返回数据

        onSaveInstanceState(Bundle):保存临时数据,必须调用super.onSaveInstanceState(Bundle),方法在活动在回收之前调用,

                                                        将数据保存至Bundle里,该Bundle即onCreate(Bundle)里的Bundle

        onBackPressed():当手机按下Back键触发的方法,可用来解决Back键的活动之间返回数据不成功等问题

    五、数据传输保存类和消息提示类(Intent,Bundle,Toast)

    保存数据有俩个类:Intent和Bundle,消息提示类:Toast

    Intent:被用于不同组件传输数据,可用来启动活动,启动服务,发送广播等

    有以下方法:

        Intent(启动活动.this,被启动活动.class):配合startActivity(Intent)或startActivityForResult(Intent,int)作为显示启动方法

        Intent(String):String为被启动活动的XML文件里的<intent-filter>里的<action>里的android:name属性值。

        addCategory(String):String为除默认Category外的category,方法给Intent指定<category>里的的android:name属性值

                    注意:1、当活动与Intent里的<action>里的android:name和<category>里的android:name都一致时为隐式启动

                                    活动方法

                              2、一个Intent可以指定一个action,多个category

                              3、android.intent.category.DEFAULT是默认category,Intent无需指定

        putExtra(String Key,String Value):用键值对方式往Intent里放入数据

        getXxxExtra(String Key):通过Key取出数据Value(Xxx可为String等数据类型)

    Bundle:长用来保存临时数据,super.onCreate(Bundle)和onSaveInstance(Bundle)配合使用

        有以下方法:

        putXxx(String Key,String Value):以键值对方式往Bundle放入数据(Xxx可为String等数据类型)

        getXxx(String Key):通过Key得到Value(Xxx可为String等数据类型

    Toast:在屏幕底部弹出小黑框消息

    格式:Toast.makeText(显示活动.this,String content,Toast.LENGTH):Toast.LENGTH 可为Toast.LENGTH.LONG

                                                                                                            或Toast.LENGTH.SHORT用来设置显示时间长短

                                                                                                            content为显示内容

    六、活动的小技巧

       小技巧One: 知晓当前活动的类名
        1、写一个基类BaseActivity
        2、让所有类继承于BaseActivity
        3、在BaseActivity的onCreate(Bundle)方法上写入        
           Log.d("BaseActivity",getClass().getSimpleName());

       小技巧Two:瞬间退出程序
        1、创建活动管理类ActivityCollector
        2、写一个基类BaseActivity,当活动onCreate()时添加至ActivityCollector里,onDestroy()时删除该        
           活动
        3、让所有类继承于BaseActivity

        1、创建活动管理类ActivityCollector

        2、写一个基类BaseActivity,当活动onCreate()时添加至ActivityCollector里,onDestroy()时删除该活动

        3、让所有类继承于BaseActivity

  • 相关阅读:
    关于字段长度的定义
    连续滚动效果的脚本
    JavaScript显示日期,跳动时间,星期
    [转载]SQL2000里的数据类型
    VSTSTF54000错误
    Delphi TreeView 现场保存与恢复
    易简协同平台与佛道修行
    CMD 反编译CHM文件
    专家与大师
    流程建模思考(草)
  • 原文地址:https://www.cnblogs.com/MrQlyn/p/10236340.html
Copyright © 2020-2023  润新知