在android中activity就相当也web的页面,有web经验的人这一点就比较清楚,在这里我就不多讲了,我就简单的讲一下activity直接的跳转,其实个人感觉android开发跟web开发很多地方都是相通的,在web中很多东西都是通过xml来配置的,但是web中很多页面的请求事件都是通过js来控制的,但是android是通过自己的事件进行操作的有点类似swing中的事件。在android project中有几个配置文件是特别重要的string.xml主要是用来配置一下参数通过key-value方式配置的,还有一个是layout文件夹,默认情况是自动生成一个main.xml有swing开发经验的人一看这个文件夹就应该知道他的作用,主要是用来存放页面的布局文件的,这个目录就是用来布局每一个activity相当于web中的css样式,还有一个就是AndroidManifest.xml这个xml文件主要是用来注册activity用的,接触过spring的人应该都知道spring中的bean也是通过xml进行注册的,如果用eclipse开发时候会自动生成应该R.java类这个类主要是用来维护一些信息,比如添加参数或者布局时候R.java里面会相应找到相关信息这个就不多讲了。

首先在string.xml定义一些参数
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Activity之间切换</string>
<string name="app_name">Activity</string>
<string name="first">第一个Activity</string>
<string name="next">下一个Activity</string>
<string name="firstBt">上页</string>
<string name="nextBt">下页</string>
</resources>
默认情况下是找到main.xml中的布局文件,在这个文件中添加一个TextView和Button
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/first"
/>
<Button
android:id="@+id/fistButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/nextBt"
/>
</LinearLayout>
以下是创建第一个activity类,因为Activity类是父类所以我们定义自己的activity时候必须继承这个父类

public class ChangeActivity extends Activity {
/** Called when the activity is first created. */

private Button fistButton;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

fistButton = (Button)findViewById(R.id.fistButton);
fistButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent it = new Intent();
it.setClass(ChangeActivity.this, NextActivity.class);
startActivity(it);
ChangeActivity.this.finish();
}
});
}
}
单点击第一个button时候就触发一个事件,通过Intent来启动activity进入下一个activity中的,it.setClass(ChangeActivity.this, NextActivity.class);就是从第一个activity跳转到第二个activity
接着创建第二个activity布局文件mylayout.xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView

android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/next"
/>
<Button
android:id="@+id/nextButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/firstBt"
/>
</LinearLayout>
在这里也是定义一个TextView和一个Button,创建第二个activity类

public class NextActivity extends Activity {

private Button nextButton;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mylayout);
nextButton = (Button)findViewById(R.id.nextButton);
nextButton.setOnClickListener(new OnClickListener() {

public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(NextActivity.this, ChangeActivity.class);
startActivity(intent);
NextActivity.this.finish();
}
});
}

}
在这里也添加应该button事件触发这个事件时候就跳转会第一个activity中,这个就是一个简单的activity之间的跳转。
以下是执行结果图



更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  3. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  4. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  5. 基于Android搭建tensorflow lite,实现官网的Demo以及运行自定义t
  6. android适配各种分辨率的问题
  7. 我对android davilk 虚拟机的理解
  8. Android(安卓)- SharedPreferences
  9. Android(安卓)Ndk: 如何从native层直接获取 assets文件夹下的文

随机推荐

  1. Java8中使用lambda不为null时才过滤值
  2. 疫情下的一些感触
  3. 程序员如何多赚钱?
  4. Android(安卓)短信列表的时间显示
  5. Spring Boot使用MongoDB
  6. JumpServer部署使用
  7. 滴滴:等干完这一票,我就不干了
  8. CentOS7安装MongoDB4
  9. 最短路径之狄克斯特拉(Dijkstra)算法
  10. 深圳又一程序员倒下,内心感到悲凉!