090913苏伟亮实验3Word文件下载.docx
《090913苏伟亮实验3Word文件下载.docx》由会员分享,可在线阅读,更多相关《090913苏伟亮实验3Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
一、实验报告的基本要求:
2.掌握使用intent实现activity之间的跳转
3.掌握在manifest文中定义多个activity,并指定LauncherActivity
二、实验开发环境和工具
可以在Linux或者Windows操作系统上搭建开发环境,所使用的开发工具包括ADTbundle或AndroidStudio,使用Java语言,工具包使用JDK1.7或1.8。
三、实验内容
(1)问题描述
设计如下界面,包括四个按钮,两个文本框。
单击对应按钮可以启动对应activity。
假定ActivityA为启动Activity。
具体如图1.1、1.2、1.3、1.4所示:
图1.1初始界面(ActivityAisstarted)
图1.2单击Dialog按钮(ActivityAispaused)
图1.3单击“StartB”(ActivityAisstoppedandActivityBisstarted)
图1.4单击“StartC”(ActivityAisstoppedandActivityCisstarted)
(2)详细设计
启动Activity:
MainActivity的设计
Activity_main.xml的设计:
<
RelativeLayoutxmlns:
android="
xmlns:
tools="
android:
layout_width="
match_parent"
layout_height="
paddingBottom="
@dimen/activity_vertical_margin"
paddingLeft="
@dimen/activity_horizontal_margin"
paddingRight="
paddingTop="
tools:
context="
com.example.shiyan3.MainActivity"
>
<
LinearLayout
id="
@+id/layout1"
wrap_content"
orientation="
horizontal"
layout_below="
@+id/textView1"
>
Button
@+id/button1"
text="
StartB"
textColor="
#FFFFFF"
/>
@+id/button2"
StartC"
@+id/button3"
FinishA"
/>
@+id/button4"
Dialog"
/LinearLayout>
TextView
layout_alignParentTop="
true"
layout_centerHorizontal="
ActivityA"
textSize="
100px"
@+id/textView2"
layout_alignLeft="
LifeCycleMethodList"
30px"
@+id/textView3"
200dp"
150dp"
"
@+id/textView4"
ActivityStatus"
@+id/textView5"
/RelativeLayout>
MainActivity.java的设计:
packagecom.example.shiyan3;
importandroid.app.AlertDialog;
importandroid.content.DialogInterface;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.support.v7.app.ActionBarActivity;
importandroid.util.Log;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.TextView;
importandroid.widget.Toast;
publicclassMainActivityextendsActionBarActivity{
privateTextViewtextview;
privateTextViewtextview1;
privateButtonbtn1;
privateButtonbtn2;
privateButtonbtn3;
privateButtonbtn4;
privatestaticfinalStringTAG="
MainActivity"
;
publicStringtag=null;
publicStringtag1=null;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
Log.d(TAG,"
ActivityA.onCreate()"
);
tag="
+"
\n"
tag1="
setContentView(R.layout.activity_main);
getWindow().setBackgroundDrawableResource(R.drawable.bk1);
textview=(TextView)findViewById(R.id.textView3);
textview.setBackgroundColor(android.graphics.Color.WHITE);
textview1=(TextView)findViewById(R.id.textView5);
textview1.setBackgroundColor(android.graphics.Color.WHITE);
textview.setText(tag);
textview1.setText(tag1);
btn1=(Button)findViewById(R.id.button1);
btn2=(Button)findViewById(R.id.button2);
btn3=(Button)findViewById(R.id.button3);
btn4=(Button)findViewById(R.id.button4);
btn1.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewv){
//Toast.makeText(getBaseContext(),"
stopped!
Toast.LENGTH_LONG).show();
Intentintent=newIntent();
//intent.putExtra(ActivityB.info,tag);
Bundlebundle=newBundle();
bundle.putString("
b"
"
hello"
intent.putExtras(bundle);
intent.setClass(MainActivity.this,ActivityB.class);
startActivity(intent);
}
});
btn2.setOnClickListener(newOnClickListener(){
//intent.putExtra(ActivityB.info,tag);
Bundlebundle=newBundle();
bundle.putString("
c"
intent.putExtras(bundle);
intent.setClass(MainActivity.this,ActivityC.class);
startActivity(intent);
btn3.setOnClickListener(newOnClickListener(){
MainActivity.this.finish();
btn4.setOnClickListener(newOnClickListener(){
AlertDialog.Builderbuilder=newAlertDialog.Builder(MainActivity.this);
builder.setTitle("
SimpleDialog"
builder.show();
builder.setPositiveButton("
close"
newDialogInterface.OnClickListener()
{
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//TODOAuto-generatedmethodstub
dialog.dismiss();
}
});
}
}
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;
thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.main,menu);
returntrue;
publicbooleanonOptionsItemSelected(MenuItemitem){
//Handleactionbaritemclickshere.Theactionbarwill
//automaticallyhandleclicksontheHome/Upbutton,solong
//asyouspecifyaparentactivityinAndroidManifest.xml.
intid=item.getItemId();
if(id==R.id.action_settings){
returntrue;
returnsuper.onOptionsItemSelected(item);
protectedvoidonStart(){
//TODOAuto-generatedmethodstub
super.onStart();
ActivityA.onStart()"
tag+="
}@Override
protectedvoidonResume(){
super.onResume();
ActivityA.onResume()"
protectedvoidonPause(){
super.onPause();
ActivityA.onPause()"
protectedvoidonDestroy(){
super.onDestroy();
ActivityA.onDestroy()"
protectedvoidonStop(){
super.onStop();
ActivityA.onStop()"
}
总体框架:
AndoidManifest.xml中添加:
activity
name="
.ActivityB"
label="
@string/app_name"
/activity>
.ActivityC"
(3)调试报告
点击“Dialog”按钮的时候,弹出Dialog对话框时,ActivityA(即MainActivity)并没有处于paused的状态,通过XX查找“只是可能处于paused状态”
(4)实验结果