首先,Activity是Android系统中的四大组件之一,可以用于显示View。
Activity是一个可以让屏幕提供用户交互动作的组件,比如打电话、照相、发送邮件和查看地图等。简单来说,我们在应用程序中能看到的内容,绝大多数都是Activity组件提供的;几乎所有的Activity都是和用户进行交互的。
它们构成了Android App里面的每一个页面,当然我们还会使用Fragment来将页面进一步划分,通过Fragment可以对特定业务模块的View+逻辑封装,让其与Activity解耦,同时还可以有自己的生命周期,让我们控制布局绘制和进行资源回收,这些都是Fragment的好处。
----------------------------------------------------------------------------------------------------------------------------------------
设置无标题窗口:
注意:该语句必须写在onCreate()方法中,并且要求写在 setContentView()方法前,要求在创建无标题窗口前系统就
必须知晓。
requestWindowFeature(Window.FEATURE_NO_TITLE);
----------------------------------------------------------------------------------------------------------------------------------------
获取当前Activity界面ID:
android.R.id.content
----------------------------------------------------------------------------------------------------------------------------------------
设置当前Activity界面Title
当前类.this.setTitle(String str );
----------------------------------------------------------------------------------------------------------------------------------------
设置视图显示布局:
setContentView(View view);
该方法用于为指定Activity视图 设置显示所用的布局,所以我们一般用于在里面存放 layout布局文件。
同时我们发现,由于该方法 需求的参数为View类型对象,所以我们可以这么做。
第二种 写法:
TextView view = new TextView(this);
view.setText("这是第二个页面");
setContentView(view);
----------------------------------------------------------------------------------------------------------------------------------------
声明与注册
1: 继承Activity
重载方法onCreate()
在该方法里使用setContentView(布局文件Id)引入布局文件
2: 需要在Androidmanifest.xml中进行注册,表示声明
如果不声明的话,这个Activity在运行时候,会报ActivityNotFoundException:错误,就是要启动的Activity没有找到
<activity android:name=“activity的全路径名”></activity>
启动与结束
启动
Intent intent = new Intent(当前ctivity.this, 要启动的activity.class);
startActivity(intent)
结束
finish()
传递基本数据
传递:
Intent intent = new Intent(LoginActivity.this, MainActivity.class);
intent.putExtra("flag", flag);
startActivity(intent)
取出:
Intent i = getIntent();
String str_text = i.getStringExtra("text");// 通过key取出上一个activity传递的值
传递引用对象
使用Bundle在Activity间传递对象数据
传递:
Intent intent=new Intent(AndroidBundleActivity.this,RecieveActivity.class);
Bundle bundle=new Bundle(); //得到bundle对象
bundle.putSerializable(“book”, book); //通过键值对形式储存对象
intent.putExtras(bundle); //将bundle放入intent里
startActivity(intent);//开启新的activity
取出:
Intent intent=this.getIntent(); //拿到intent
Bundle bundle=intent.getExtras(); //获取bundle
Book book=(Book)bundle.getSerializable(“book”);//通过key键取值
被传递的对象要实现Serializable 接口
转载请注明原文地址: https://ju.6miu.com/read-15415.html