安卓开发之activity详解(sumzom)

时间:2023-03-08 17:02:26

app中,一个activity通常是指的一个单独的屏幕,相当于网站里面的一个网页,它是对用户可见的,它上面可以显示一些控件,并且可以监听处理用户的时间做出响应。

那么activity之间如何进行通信呢?他们是通过intent进行通信以及切换。Intent有两个重要部分(动作传递,数据传递);

Ø神马是Activity?

activity是四大组件,代表者用户可操作界面,可与用户进行交互。比如,拍照,登陆注册等交互界面。一个应用程序通常由多个activity松耦合(低耦合)组成,当用户打开app见到的第一个界面我们称之为MianActivity。一个activity可以启动另外一个activity,当新activity启动时,前一个activity将stop,但系统会将其保存到后台栈(back stack),并且获得用户焦点。Back stack遵循后进先出的原则,当用户按手机back键时,当前activity会从backstack移除,前一个恢复。

Activity回调函数:创建,启动,恢复,暂停,停止,销毁;

绑定视图:SetContentView(view)

Activity之间通过intent通信。

Intent intent = new Intent(MainActivity.this,orther.class);

startActivity(intent);

ØMVC模式:

M(Model 模型):Model是应用程序的主体部分,所有的业务逻辑都应该写在这里,在Android中Model层与JavaEE中的变化不大,如:对数据库的操作,对网络等的操作都放在该层(但不是说它们都放在同一个包中,可以分开放,但它们统称为Model层)。
       V(View 视图):是应用程序中负责生成用户界面的部分,也是在整个MVC架构中用户唯一可以看到的一层,接收用户输入,显示处理结果;在Android应用中一般采用XML文件里德界面的描述,使用的时候可以非常方便的引入,当然也可以使用JavaScript+Html等方式作为View。
       C(Controller控制层)android的控制层的重任就要落在众多的activity的肩上了,所以在这里就要建议大家不要在activity中写太多的代码,尽量能过activity交割Model业务逻辑层处理。

Ø如何对activity应用样式和主题进行操作?

默认情况下,一个activity占据整个屏幕。我们也可以定制Activity,以窗口的形式显示,用来提醒永辉将执行某些操作。在这种情况下,以对话框的形式来显示activity以引起用户的注意是个不错的方法。

修改AndroidManifest.xml文件中的<Activity/>标签,添加android:theme属性。

例:<activity

android:theme="@android:style/Theme.Dialog"

android:name="com.example.helloandroid.MainActivity"

android:label="@string/app_name" ></ activity >

Ø隐藏Activity标题(ActionBar)

方法一:

在代码中在绑定视图之前声明

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);//隐藏标题栏,写在绑定///视图之前

setContentView(R.layout.activity_main);

//绑定视图层

initWithView();

Intent intent = new Intent();

startActivity(intent);

}

方法二:

在AndroidManifest文件中:

<activity  android:name=".Activity"
       android:theme="@android:style/Theme.NoTitleBar"
  ></activity>

相信大家对activity有初步的了解了吧!!!

你们的阅读是我最大的动力,我以后的帖子会更新的越来越快,越来越好——!