涉及知识点:布局,Activity中数据回传
一.页面布局
1.布局分析
根据图片可知整个结构为竖向线性布局,涉及组件ImageView,TextView,Button,
二.过程
新建 项目Equipment selection---->新建emptyActivity
(名为EquipmentActivity)
建四个布局文件
1.activity_char.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/information" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:text="Test" android:textSize="30dp" /> <ImageView android:id="@+id/TX" android:layout_width="150dp" android:layout_height="150dp" android:layout_below="@+id/information" android:layout_centerHorizontal="true" android:background="@mipmap/ic_launcher" /> <TextView android:id="@+id/status" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/TX" android:layout_centerHorizontal="true" android:text="Status" android:textSize="30dp" android:textStyle="bold" /> <LinearLayout android:id="@+id/tv_health" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/status" android:layout_marginTop="20dp"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="Health" /> <ProgressBar android:id="@+id/Health" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_weight="3" /> <TextView android:id="@+id/healthNum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="0" /> </LinearLayout> <LinearLayout android:id="@+id/tv_power" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/tv_health" android:layout_marginTop="20dp"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="Power" /> <ProgressBar android:id="@+id/Power" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_weight="3" /> <TextView android:id="@+id/powerNum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="0" /> </LinearLayout> <LinearLayout android:id="@+id/tv_sen" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_below="@+id/tv_power" android:layout_marginTop="20dp"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="Sen " /> <ProgressBar android:id="@+id/Sen" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_weight="3" /> <TextView android:id="@+id/senNum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="0" /> </LinearLayout> <Button android:id="@+id/shop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/tv_sen" android:layout_centerHorizontal="true" android:text="GET GEARS" /> </RelativeLayout>
2.activity_info.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/tv_username" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Testtext" android:textSize="23dp" /> <TextView android:id="@+id/tv_password" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Testtext" android:textSize="23dp" /> <TextView android:id="@+id/tv_sex" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Testtext" android:textSize="23dp" /> <Button android:id="@+id/gotochar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginTop="90dp" android:text="Go to MyCharter" /> </LinearLayout>![]()
3.activity_register
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="16dp" android:paddingEnd="16dp" android:paddingLeft="16dp" android:paddingRight="16dp"> <LinearLayout android:id="@+id/info" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Username" android:textSize="23dp" /> <EditText android:id="@+id/et_Username" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:gravity="center" android:hint="Please input" android:textSize="23dp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Password" android:textSize="23dp" /> <EditText android:id="@+id/et_Password" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:gravity="center" android:hint="Please input" android:inputType="textPassword" android:textSize="23dp" /> </LinearLayout> <RadioGroup android:id="@+id/RG" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="30dp" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Sex" android:textSize="23dp" /> <RadioButton android:id="@+id/man" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:text="Man" android:textSize="20dp" /> <RadioButton android:id="@+id/woman" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:text="Woman" android:textSize="20dp" /> </RadioGroup> <LinearLayout android:layout_marginTop="100dp" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <Button android:id="@+id/btn_register" android:layout_marginTop="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="register" android:layout_weight="1"/> <Button android:id="@+id/btn_cancel" android:layout_marginTop="20dp" android:layout_marginLeft="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Cancel" android:layout_weight="1"/> </LinearLayout> </LinearLayout></RelativeLayout>
4.activity_shop.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/skill" android:layout_width="100dp" android:layout_height="100dp" android:background="@drawable/hudun" /> <TextView android:id="@+id/itemNum" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/skill" android:text="item" android:textSize="23dp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@+id/skill" android:layout_marginTop="10dp" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextText" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="TextText" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:text="TextText" /> </LinearLayout> </RelativeLayout>
4个相应的Activity
1.info_activity
package cn.edu.bzu.equipmentselection; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; public class infoActivity extends AppCompatActivity { Button button; TextView tv1,tv2,tv3; String username,password,sex; @Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_info); button=(Button)findViewById(R.id.gotochar); tv1=(TextView)findViewById(R.id.tv_username); tv2=(TextView)findViewById(R.id.et_Password); tv3=(TextView)findViewById(R.id.tv_sex); Intent getData=new Intent(); Bundle bundle=getData.getExtras(); username=bundle.getString("username"); password=bundle.getString("password"); sex=bundle.getString("sex"); int code=bundle.getInt("sex"); if(code==1){ sex="man"; } else if(code==2){ sex="woman"; } tv1.setText("You username is" +username); tv2.setText("You password is" +password); tv3.setText("You sex is" +sex); pass(); } public void pass() { final Intent intent=new Intent(this,charActivity.class); intent.putExtra("username",username); intent.putExtra("password",password); intent.putExtra("sex",sex); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(intent); } }); } }2. char_activity
3.Main_activity
package cn.edu.bzu.equipmentselection; import android.content.DialogInterface; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.RadioButton; public class MainActivity extends AppCompatActivity implements View.OnClickListener { EditText et1,et2; RadioButton rd1,rd2; Button b1,b2; String username,password; int sex; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); b1=(Button)findViewById(R.id.btn_register); b1=(Button)findViewById(R.id.btn_cancel); et1=(EditText)findViewById(R.id.et_Username); et2=(EditText)findViewById(R.id.et_Password); rd1=(RadioButton)findViewById(R.id.man); rd2=(RadioButton)findViewById(R.id.woman); b1.setOnClickListener(this); b2.setOnClickListener(this); } public void onClick(View v){ switch (v.getId()){ case R.id.btn_register : username=et1.getText().toString(); password=et2.getText().toString(); if(rd1.isChecked()){ sex=1; }else if(rd2.isChecked()){ sex=2; } passData(); break; case R.id.btn_cancel : break; } } public void passData(){ Intent intent=new Intent(this,infoActivity.class); Bundle bundle=new Bundle(); bundle.putString("username",username); bundle.putString("password",password); bundle.putInt("sex",sex); intent.putExtras(bundle); startActivity(intent); } }4.shop_activity