效果图如上
建立如图所示:
一、按照顺序代码如下:
【1】
<?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/text" android:layout_marginTop="10dp" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <ImageView android:id="@+id/TX" android:layout_marginTop="100dp" android:layout_width="150dp" android:layout_height="150dp" android:background="@drawable/soldier76" android:layout_centerHorizontal="true" /> <TextView android:id="@+id/status" android:layout_below="@+id/TX" android:layout_marginTop="10dp" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20sp" android:text="Status"/> <LinearLayout android:id="@+id/information" android:layout_below="@+id/status" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Health" /> <ProgressBar android:id="@+id/healthBar" android:layout_weight="1" android:layout_width="200dp" android:layout_height="wrap_content" style="@style/Widget.AppCompat.ProgressBar.Horizontal" /> <TextView android:id="@+id/healthNum" android:layout_marginLeft="10dp" android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Power " android:id="@+id/textView" /> <ProgressBar android:layout_weight="1" android:layout_width="200dp" android:layout_height="wrap_content" style="@style/Widget.AppCompat.ProgressBar.Horizontal" android:id="@+id/powerBar" /> <TextView android:id="@+id/powerNum" android:layout_marginLeft="10dp" android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Sen " /> <ProgressBar android:id="@+id/senBar" android:layout_weight="1" android:layout_width="200dp" android:layout_height="wrap_content" style="@style/Widget.AppCompat.ProgressBar.Horizontal" /> <TextView android:id="@+id/senNum" android:layout_marginLeft="10dp" android:layout_weight="1" android:textSize="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> </LinearLayout> <Button android:layout_below="@+id/information" android:layout_centerHorizontal="true" android:id="@+id/shop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Buy Gears"/> </RelativeLayout>【2】
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/tv_username" android:layout_marginTop="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="23sp"/> <TextView android:id="@+id/tv_sex" android:layout_marginTop="15dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="23sp"/> <TextView android:id="@+id/tv_password" android:layout_marginTop="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="23sp"/> <Button android:id="@+id/chara" android:layout_marginTop="100dp" android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Go to myCharacter"/> </LinearLayout>【3】
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" 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="com.eee.demo.MainActivity"> <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="23sp" /> <EditText android:id="@+id/et_username" android:layout_marginLeft="20dp" android:layout_width="150dp" android:layout_height="wrap_content" android:hint="Please input" android:gravity="center"/> </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="23sp"/> <EditText android:id="@+id/et_password" android:layout_marginLeft="20dp" android:layout_width="150dp" android:layout_height="wrap_content" android:hint="Please Input" android:inputType="textPassword" android:gravity="center"/> </LinearLayout> </LinearLayout> <RadioGroup android:id="@+id/RG_Sex" android:layout_below="@+id/info" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Sex" android:textSize="23sp"/> <RadioButton android:id="@+id/man" android:layout_marginLeft="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Man" android:textSize="20sp"/> <RadioButton android:id="@+id/woman" android:layout_marginLeft="20sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Woman" android:textSize="20sp"/> </RadioGroup> <LinearLayout android:layout_marginTop="10dp" android:layout_below="@+id/RG_Sex" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:gravity="center"> <Button android:id="@+id/bt_register" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Register"/> <Button android:id="@+id/bt_cancel" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Cancel" android:layout_marginLeft="10sp"/> </LinearLayout> </RelativeLayout>【4】
<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:layout_marginTop="10dp" android:id="@+id/item1" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:layout_marginLeft="20dp" android:layout_above="@+id/itemName1" android:layout_width="100dp" android:layout_height="100dp" android:id="@+id/skill1" /> <TextView android:id="@+id/itemName1" android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="23sp" android:text="ItemName" android:layout_alignBottom="@+id/linearLayout1" /> <LinearLayout android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:id="@+id/linearLayout1" android:layout_centerVertical="true" android:layout_centerHorizontal="true"> <TextView android:id="@+id/addHealth1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addPower1" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addSen1" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> </LinearLayout> </RelativeLayout> <RelativeLayout android:layout_marginTop="10dp" android:id="@+id/item2" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:layout_marginLeft="20dp" android:layout_above="@+id/itemName2" android:layout_width="100dp" android:layout_height="100dp" android:id="@+id/skill2" /> <TextView android:id="@+id/itemName2" android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="23sp" android:text="ItemName" android:layout_alignBottom="@+id/linearLayout2" /> <LinearLayout android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:id="@+id/linearLayout2" android:layout_centerVertical="true" android:layout_centerHorizontal="true"> <TextView android:id="@+id/addHealth2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addPower2" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addSen2" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> </LinearLayout> </RelativeLayout> <RelativeLayout android:layout_marginTop="10dp" android:id="@+id/item3" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:layout_marginLeft="20dp" android:layout_above="@+id/itemName3" android:layout_width="100dp" android:layout_height="100dp" android:id="@+id/skill" /> <TextView android:id="@+id/itemName3" android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="23sp" android:text="ItemName" android:layout_alignBottom="@+id/linearLayout3" /> <LinearLayout android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:id="@+id/linearLayout3" android:layout_centerVertical="true" android:layout_centerHorizontal="true"> <TextView android:id="@+id/addHealth3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addPower3" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> <TextView android:id="@+id/addSen3" android:layout_marginTop="10sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Test Text" android:textSize="20sp" /> </LinearLayout> </RelativeLayout> </LinearLayout>
二、Java下的charActivity代码如下:
package com.eee.demo; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.ProgressBar; import android.widget.TextView; /** * Created by li124 on 2017/3/19. */ public class charActivity extends AppCompatActivity implements View.OnClickListener{ Button button; ImageView imageView; TextView topic; TextView status; TextView tv_health,tv_power,tv_sen; ProgressBar pb_health,pb_power,pb_sen; int kind=1;// this will change the shop`s Item! protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_char); button=(Button)findViewById(R.id.shop); topic=(TextView)findViewById(R.id.text); tv_health=(TextView)findViewById(R.id.healthNum); tv_power=(TextView)findViewById(R.id.powerNum); tv_sen=(TextView)findViewById(R.id.senNum); status=(TextView)findViewById(R.id.status); imageView=(ImageView)findViewById(R.id.TX); pb_health=(ProgressBar)findViewById(R.id.healthBar); pb_power=(ProgressBar)findViewById(R.id.powerBar); pb_sen=(ProgressBar)findViewById(R.id.senBar); button.setOnClickListener(this); Intent get=getIntent(); String username=get.getStringExtra("username"); String sex=get.getStringExtra("sex"); if(sex.equals("man")){ topic.setText(username+"`s character is Soldier76"); imageView.setBackground(getDrawable(R.drawable.soldier76)); kind=1; } else if(sex.equals("woman")){ topic.setText(username+"`s character is Mercy"); imageView.setBackground(getDrawable(R.drawable.angel)); kind=2; } initProgress(); } public void onClick(View view){ Intent intent=new Intent(charActivity.this,shopActivity.class); intent.putExtra("kind",kind); startActivityForResult(intent,1001); } public void initProgress(){ int x; pb_health.setMax(100); pb_power.setMax(100); pb_sen.setMax(100); if (kind==1){ pb_health.setProgress(80); pb_power.setProgress(70); pb_sen.setProgress(60); tv_health.setText(pb_health.getProgress()+""); tv_power.setText(pb_power.getProgress()+""); tv_sen.setText(pb_sen.getProgress()+""); x=pb_health.getProgress(); judgeStatus(x); }else if(kind==2){ pb_health.setProgress(60); pb_power.setProgress(40); pb_sen.setProgress(80); tv_health.setText(pb_health.getProgress()+""); tv_power.setText(pb_power.getProgress()+""); tv_sen.setText(pb_sen.getProgress()+""); x=pb_health.getProgress(); judgeStatus(x); } } @Override protected void onActivityResult(int requestCode,int resultCode,Intent data){ if(data!=null){ if(resultCode==1001){ if(requestCode==1001){ ItemShop info =(ItemShop) data.getSerializableExtra("Gears"); updataProgressBar(info); } } } } // @Override // public void onActivityResult(int requestCode,int resultCode,Intent data){ // switch (resultCode){ // case 1001: // if(requestCode==1){ // ItemShop itemShop=(ItemShop)data.getSerializableExtra("Gears"); // updataProgressBar(itemShop); // } // break; // } // // } public void updataProgressBar(ItemShop itemShop){ int p1,p2,p3,x; p1=pb_health.getProgress(); p2=pb_power.getProgress(); p3=pb_sen.getProgress(); pb_health.setProgress(p1+itemShop.getHealth()); pb_power.setProgress(p2+itemShop.getPower()); pb_sen.setProgress(p3+itemShop.getSen()); tv_health.setText(pb_health.getProgress()+""); tv_power.setText(pb_power.getProgress()+""); tv_sen.setText(pb_sen.getProgress()+""); x=pb_health.getProgress(); judgeStatus(x); } public void judgeStatus(int x){ x= pb_health.getProgress(); if(x>0&&x<=25) { status.setText("Warning"); status.setTextColor(Color.rgb(255, 0, 0)); }else if (x>25&&x<=70){ status.setText("Good"); status.setTextColor(Color.rgb(255,255,0)); }else if(x>70&&x<=100){ status.setText("Wonderful"); status.setTextColor(Color.rgb(0,255,0)); } } }三、Java下的infoActivity代码如下:
package com.eee.demo; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.TextView; /** * Created by li124 on 2017/3/19. */ public class infoActivity extends AppCompatActivity { Button button; TextView tv1,tv2,tv3; public String sex,username,password; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_info); button=(Button)findViewById(R.id.chara); tv1=(TextView)findViewById(R.id.tv_username); tv2=(TextView)findViewById(R.id.tv_password); tv3=(TextView)findViewById(R.id.tv_sex); Intent getData=getIntent(); Bundle bundle =getData.getExtras(); username=bundle.getString("username"); password=bundle.getString("password"); int code=bundle.getInt("sex"); if (code==1){ sex="man"; }else if (code==2){ sex="woman"; } tv1.setText("Your username is "+username); tv2.setText("Your password is "+password); tv3.setText("Your Sex is "+sex); pass(); } public void pass(){ final Intent intent =new Intent(infoActivity.this,charActivity.class); intent.putExtra("username",username); intent.putExtra("sex",sex); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { startActivity(intent); } }); } }
四、Java下的ItemShop代码如下:
package com.eee.demo; import java.io.Serializable; /** * Created by li124 on 2017/3/20. */ public class ItemShop implements Serializable { private String Name; private int health; private int power; private int sen; public ItemShop(String name, int health, int power, int sen) { Name = name; this.health = health; this.power = power; this.sen = sen; } public String getName() { return Name; } public void setName(String name) { Name = name; } public int getHealth() { return health; } public void setHealth(int health) { this.health = health; } public int getPower() { return power; } public void setPower(int power) { this.power = power; } public int getSen() { return sen; } public void setSen(int sen) { this.sen = sen; } }
五、Java下的MainActivity代码如下:
package com.eee.demo; 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{ Button b1,b2; RadioButton r1,r2; EditText et1,et2; String username,password; int sex ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); b1=(Button)findViewById(R.id.bt_register); b2=(Button)findViewById(R.id.bt_cancel); r1=(RadioButton)findViewById(R.id.man); r2=(RadioButton)findViewById(R.id.woman); et1=(EditText)findViewById(R.id.et_username); et2=(EditText)findViewById(R.id.et_password); b1.setOnClickListener(this); } public void onClick(View view){ switch (view.getId()){ case R.id.bt_register: username=et1.getText().toString(); password=et2.getText().toString(); if (r1.isChecked()){ sex=1; }else if (r2.isChecked()){ sex=2; } passData(); break; case R.id.bt_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); } }
六、Java下的shopActivity代码如下:
package com.eee.demo; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.ImageView; import android.widget.TextView; /** * Created by li124 on 2017/3/19. */ public class shopActivity extends AppCompatActivity implements View.OnClickListener{ TextView health,power,sen,name; TextView health2,power2,sen2,name2; ImageView imageView; ImageView imageView2; private ItemShop item1,item2,item3; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.shop); findViewById(R.id.item1).setOnClickListener(this); health=(TextView)findViewById(R.id.addHealth1); power=(TextView)findViewById(R.id.addPower1); sen=(TextView)findViewById(R.id.addSen1); name=(TextView)findViewById(R.id.itemName1); imageView=(ImageView)findViewById(R.id.skill1); findViewById(R.id.item2).setOnClickListener(this); health2=(TextView)findViewById(R.id.addHealth2); power2=(TextView)findViewById(R.id.addPower2); sen2=(TextView)findViewById(R.id.addSen2); name2=(TextView)findViewById(R.id.itemName2); imageView2=(ImageView)findViewById(R.id.skill2); // Intent get=getIntent(); // int kind=get.getIntExtra("kind",1); item1 = new ItemShop("Tactical Eyepiecee", 10, 40, 10); name.setText(item1.getName() + ""); health.setText("Health++" + item1.getHealth()); power.setText("Power++" + item1.getPower()); sen.setText("Sen++" + item1.getSen()); imageView.setImageResource(R.drawable.skill_76); item2 = new ItemShop("Hero Never Die", 20, 10, 40); name2.setText(item2.getName() + ""); health2.setText("Health++" + item2.getHealth()); power2.setText("Power++" + item2.getPower()); sen2.setText("Sen++" + item2.getSen()); imageView2.setImageResource(R.drawable.skill_mercy); } public void onClick(View view){ switch (view.getId()){ case R.id.item1: Intent put1 =new Intent(shopActivity.this,charActivity.class); put1.putExtra("Gears",item1); setResult(1001,put1); finish(); break; case R.id.item2: Intent put2 =new Intent(shopActivity.this,charActivity.class); put2.putExtra("Gears",item2); setResult(1001,put2); finish(); break; } } }
七、AndroidMainfest.xml配置文件
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.eee.demo"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity" android:label="Register"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".infoActivity" android:label="Information"> </activity> <activity android:name=".charActivity" android:label="Character"> </activity> <activity android:name=".shopActivity" android:label="Shop"> </activity> </application> </manifest>八、所需图片复制粘贴如下图
OK,结束。。