这里开始,我们只讲实战,要看理论的同学可以参考其它章节。
首先,我们假想我们的 App 是怎样的,我们要做一个画廊。首先,App 的进入页面(mainActivity)是很多格的图片缩略图,点击随意一个缩略图,可以看这图的大图,看大图的页面就是另外一个 Activity,也就是我们这里要谈的“添加一个新的Activity”。
1. 首先,定义一个 Activity,命名为PaintingActivity.java(我这里是 PaintingActivity):
package com.nowamagic.nm_01;
import android.app.Activity;
import android.os.Bundle;
public class PaintingActivity extends Activity {
@Override
// Activity 运行的入口
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.painting_activity);
}
}
2. 给 PaintingActivity 设计布局文件 painting_activity.xml :
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
android:id="@+id/paintingView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="PaintingShow" />
3. 在布局文件 AndroidMainfest.xml 里注册该 Activity。就是在 application 节点下多加一个 activity 标签:
android:name="com.nowamagic.nm_01.PaintingActivity"
android:label="PaintingActivity">
这样,我们就已经往 app 里加入一个新的 Activity 了。
在 mainActivity 里启动 PaintingActivity
先在 activity_main.xml 里加入控件:
android:id="@+id/mytext1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
android:id="@+id/mybtn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/mytext1"
android:layout_below="@+id/mytext1"
android:layout_marginTop="22dp"
android:text="按钮测试" />
接下来很简单,给按钮加入事件,然后绑定 intent 意图对象:
private Button button;
private TextView textView;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView)findViewById(R.id.mytext1);
button = (Button)findViewById(R.id.mybtn1);
button.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//textView.setText("Welcome!!");
Intent intent = new Intent();
intent.setClass(MainActivity.this, PaintingActivity.class);
startActivity(intent);
}
});
}
现在点击按钮,即可前往新的 activity。
效果如下: