--app
--manifests
--AndroidManifest.xml(项目启动文件,包括项目基本信息及所有活动注册信息)
--java
--.../XXXActivity.java(活动实体类)
--res(资源文件夹)
--layout
--activityXXX.xml(活动布局文件)
--gradle scripts
--build.gradle(project)(部署文件,包括SDK版本及依赖等)
活动通俗来讲,一个页面(不一定全屏)相当于一个活动,每个活动具有活动周期,页面切换即是活动切换;活动中有各种控件,每个控件可以提供不同的功能(如按钮、文本框)。
每个活动对应一个实体类和一个布局文件,在实体类的onCreate方法中需要加载布局文件,在布局文件中添加的控件可通过id等方式被实体类调用,从而实现页面的交互。
安卓基本的管理单位是活动,当一个活动被启动时,将会被入栈;当活动被销毁时,会被出栈。即:当前页面所显示的活动为当前栈顶的活动。
返回栈不一定只有一个,但页面激活顺序只与当前返回栈相关,如:
在这种情况下,栈1从底到顶为活动1、活动3,栈2只有活动2,那么从活动3选择返回,栈1将会弹出活动3,当前页面显示栈1的栈顶活动1;而从活动1选择返回,栈1将会弹出活动1,此时栈1已空,页面将切换到栈2的栈顶活动2。
活动生命周期(此部分参考博客Android开发 入门篇(一))
活动状态每个活动具有四种状态:运行状态、暂停状态、停止状态、销毁状态。
Activity类中定义了七个回调方法,覆盖了生命周期中的每一个环节
public class MainActivity extends AppCompatActivity {@Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
其中,页面布局引用方法为:R.res目录下页面布局文件夹.页面布局文件名,如例子中R.layout.activity_main对应:
其中:android.name应为活动实体类的路径,因为外部有package,可以简写;android.exported为Android12添加的必写标签,之前版本可以不写;intent-filter标签中用于进行活动切换,后文再说。
activity标签位置:
...
活动切换活动切换分为两种:创建新活动、返回上一活动。
活动切换通过intent进行。
创建Intent有几种方式创建指向SecondActivity的intent:
通过startActivity(intent)跳转至新活动
通过startActivity(intent, requestCode)跳转至新活动,并要求新活动销毁时返回结果,结果以requestCode接收(方法已过期)
Intent intent = new Intent("intentNameTest");
startActivity(intent);
//startActivityForResult(intent, 1)
结束当前活动,返回上一级销毁当前活动通过finish()方法
如果需要返回结果,则要通过一个空intent进行传递,返回数据通过putExtra方法传输:
Intent emptyIntent = new Intent();
emptyIntent.putExtra("data_return", "返回数据");
setResult(1, emptyIntent);
finish();
上级活动通过重写onActivityResult接收,数据通过get相关方法接收:
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {super.onActivityResult(requestCode, resultCode, data);
String str = data.getStringExtra("data_return");
}
Fragmentfragment是依托于活动运行的,相当于一个小模块,每个活动中可以有多个fragment,同一个fragment也可以被多个活动引用。
fragment的生命周期不同于活动,单独计算,但受活动影响(活动启动不代表fragment启动,活动销毁fragment一定销毁)。
有一些控件是专属于fragment的。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
新闻名称:Android开发-1-创新互联
本文URL:https://www.cdcxhl.com/article30/gscpo.html
成都网站建设公司_创新互联,为您提供外贸网站建设、网站设计公司、用户体验、企业建站、网站建设、微信小程序
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联