本文纯属个人见解,是对后面习学的总结,如有描述不准确的地方还请高手指正~
在本章教程中,我们将会习学如安在Activity间换切。
后面的那么多章教程都是在一个Activity——View中之作操的,想必大家也得觉当相愁闷了。
直奔主题,在Android软件开发中,一个应用往往是由多个Activity和View构成的,那么这些Activity是如何换切的呢?Android为我们供提了用于Activity间讯通的类——Intent。
好的我们当初来看看这个Intent是怎么应用的。
第一步,建立一个工程,我们就叫它Ep.ChangeActivity,其余称名不转变,建好后之再新建一个Activity,命名为:Main2Activity,如果准确建立的话,这个Activity会动自帮你加添一个视图activity_main2。
好的我们来说说这个骤步吧。
OK这样就实现了一个Activity——View了。
第二步,写视图View,为了便利同学们懂得,我的视图做得比较简单:
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="111111" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="63dp" android:text="11111" /> </RelativeLayout>
activity_main2.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".Main2Activity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="222222" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="64dp" android:text="22222" /> </RelativeLayout>
当初看不到没关系,在最后我会给大家上运行效果图的。
第三步,核心,写activity:
MainActivity.java
package com.example.ep2.changeactivity; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button bt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bt=(Button)findViewById(R.id.button1); bt.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent it= new Intent(); it.setClass(MainActivity.this, Main2Activity.class); startActivity(it); MainActivity.this.finish(); } }); } }
Main2Activity.java
package com.example.ep2.changeactivity; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class Main2Activity extends Activity { private Button bt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); bt=(Button)findViewById(R.id.button1); bt.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent it=new Intent(); it.setClass(Main2Activity.this, MainActivity.class); startActivity(it); Main2Activity.this.finish(); } }); } }
这样以可就实现Activity间的换切了,是不是很简单。
最后上运行结果图:
好的我们这章教程就讲到这里了,下章教程将会讲Activity之间的数据递传。
文章结束给大家分享下程序员的一些笑话语录: 小沈阳版程序员~~~ \n程序员其实可痛苦的了......需求一做一改,一个月就过去了;嚎~ \n需求再一改一调,一季度就过去了;嚎~ \n程序员最痛苦的事儿是啥,知道不?就是,程序没做完,需求又改了; \n程序员最最痛苦的事儿是啥,知道不? 就是,系统好不容易做完了,方案全改了; \n程序员最最最痛苦的事儿是啥,知道不? 就是,系统做完了,狗日的客户跑了; \n程序员最最最最最痛苦的事儿是啥,知道不? 就是,狗日的客户又回来了,程序给删没了!