如何了解Android应用程序的基础?

时间:2018-10-15 05:02:58

标签: java android android-activity

我打开了一个活动为空的新项目,这些代码存在于activitymain.java文件夹中

package com.example.md_saif.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

现在我有几个问题

1:此代码的目的是什么

import android.support.v7.app.AppCompatActivity;

2:什么是AppCompatActivity?

3:public class MainActivity extends AppCompatActivity为什么将MainActivity类扩展到AppCompatActivity? (实际上我对AppCompatActivity一无所知)

4:protected void onCreate(Bundle savedInstanceState)这里的“捆绑保存的实例状态”有什么用? (实际上,我不清楚“捆绑保存的InstanceState”以及为什么在此使用它。

1 个答案:

答案 0 :(得分:1)

  

1:此代码的目的是什么

     

导入android.support.v7.app.AppCompatActivity;

您正在导入AppCompatActivity。支持库V7中存在的内容。该软件包具有可以向后兼容直到android API 7的组件。

  

2:什么是AppCompatActivity?

AppCompatActivity代表“活动”,由Google支持库组件提供。支持库组件是您使用最新UI趋势的最佳方式,而不仅限于旧设备。因此,您无需在UI屏幕上使用“活动”,而是将屏幕基于兼容性软件包android.support.*。活动是我们在用户界面中使用的基本Android组件。

  

3:公共类MainActivity扩展了AppCompatActivity,为什么   MainActivity类扩展到AppCompatActivity吗? (实际上我没有   关于AppCompatActivity的想法)

移动应用程序具有预定义的生命周期,因此为了将其用于每个移动开发人员,框架提供了基本组件,可在需要时使代码保持运行。因此,您必须扩展这些基本组件。

  

4:受保护的void onCreate(Bundle savedInstanceState)的用途是什么   这里的“捆绑保存的实例状态”? (实际上我不清楚   关于“捆绑保存的实例状态”以及为什么在此使用它。

Bundle是一个Android框架对象,可帮助您在不同的基本组件(例如活动)之间移动有价值的数据。这个saveInstanceState表示您的Activity的先前保存状态。还有一些其他方法可以用来保存状态!万一您的用户旋转设备,框架(系统)将重新启动您的活动,此保存状态将帮助您持久保存所需的数据。

查看此详细信息: https://developer.android.com/guide/components/fundamentals

或者您可以开始本课程 https://www.udacity.com/course/android-basics-nanodegree-by-google--nd803