Android实践开发【day 2】

1、Activity

-MainActivity

MainActivity本质上还是一个Activity类

public class MainActivity extends AppCompatActivity {
    //Activity:可视化界面
    //public class XxxActivity extends Activity     (定义一个普通的类,再继承一个窗口的基类)
    //public class XxxFrame extendsJFrame           (java继承JFrame就会有一个窗口的特性)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);     //调用父类的onCreate构造函数
        //设置内容视图
        //R:为每个资源文件按类别分配一个索引
        //使程序员可以通过R.类别名.资源名 去操作对应资源
        setContentView(R.layout.activity_main); 
    }
}

super就是调用父类的属性或方法,反之this就是调用本类的属性和方法。
savedInstanceState是保存当前Activity的状态信息,如果一个非running的Activity因为资源紧张而被系统销毁,当再次启动这个Activity时,可以通过这个保存下来的状态实例,即通过saveInstanceState获取之前的信息,然后使用这些信息,让用户感觉和之前的界面一模一样,提升用户体验。
在实际应用中,当一个Activity结束前,如需保存状态,就在onSaveInstanceState中,将状态数据以key-value的形式放入到saveInstanceState中。这样,当一个Activity被创建时,就能从onCreate的参数saveInstanceState中或得状态数据。
状态这个参数在实现应用中有很大的用途,比如:一个游戏在退出前,保存一下当前运行游戏的状态,当下次开启时能接着上次的继续玩。再比如,电子书程序,当一本小说被阅读到第199页后退出了(不管是内存不足还是用户自动关闭程序),当下次打开时,读者可能已忘记了上次已阅读到第几页了,但是,读者想接着上次的读下去。如果采用saveInstallState参数,就很容易解决上述问题。

2、布局文件

 Code模式:通过一个个标签并设置其各个属性来编写布局文件。

Split模式:预览布局文件的效果。

Design模式:拖拽控件进行布局。

3、清单文件

 若要在清单文件中配置Activity,在其中加入activity标签就好。

        <activity
            android:name=".MainActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

一个应用程序可以有许多个activity(页面),并且它们是同级的,那么在启动APP时,页面应该如何显示?

intent-filter就是解决这个问题的。

intent-filter意图过滤器

Intent Filter就是用来注册 Activity 、Service 、 Broadcast、Receiver(四大组件) 具有能在某种数据上执行一个动作的能力。使用 Intent Filter ,应用程序组件告诉 Android ,它们能为其它程序的组件的动作请求提供服务,包括同一个程序的组
件、本地的或第三方的应用程序。
android.intent.action.MAIN  表明了一个应用启动时首先启动这个Activity的动作。
android.intent.category.LAUNCHER  当activity中出现这个东西的时候,说明,这个页面就要通过APP图标来开启。

总结

1、创建一个活动

2、创建布局文件

3、在活动中声明引用哪个布局文件

4、在清单文件AndroidManifest中注册活动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Liangjuhan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值