您的位置:首页 > 其它

装备选择案例

2017-03-27 18:04 591 查看
                                                                                 运行结果图

                                      

        


           



activity_log.xml布局文件

<?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_main2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
tools:context="bzu.edu.cn.equipmentselect.LogActivity">

<TableLayout
android:id="@+id/table"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="15dp">

<TableRow android:layout_marginBottom="10dp">

<TextView
android:id="@+id/textuser"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Username"
android:textSize="20sp" />

<EditText
android:id="@+id/user"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:background="@drawable/editview" />
</TableRow>

<TableRow>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password"
android:textSize="20sp" />

<EditText
android:id="@+id/pass"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:background="@drawable/editview"
android:inputType="numberPassword" />
</TableRow>
</TableLayout>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/table"
android:orientation="horizontal"
android:padding="20dp">

<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="login"
android:text="Login" />

<Button
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/button"
android:onClick="reset"
android:text="Reset"
/>
</LinearLayout>

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:background="@drawable/wel" />

</RelativeLayout>


editview.xml文件

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="5dp"></corners>
<stroke android:color="#FFE4E1" android:width="3dp"></stroke>
</shape>


button.xml文件

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#00BFFF"></solid>
<corners android:radius="5dp"></corners>
</shape>


LogActivity.java

package bzu.edu.cn.equipmentselect;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;

public class LogActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_log);
}

public void login(View v) {
Intent intent = new Intent(this, MainActivity.class);
EditText username = (EditText) findViewById(R.id.user);
intent.putExtra("username", username.getText().toString());
startActivity(intent);
}

public void reset(View v) {
EditText user = (EditText) findViewById(R.id.user);
EditText pass = (EditText) findViewById(R.id.pass);
user.setText("");
pass.setText("");
}
}


1、activity_main.xml布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"
tools:context="bzu.edu.cn.equipmentselect.MainActivity">

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="80dp"
android:background="@drawable/baby" />

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="主人,快给小宝宝买装备吧"
android:textSize="18sp" />

<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:gravity="center">

<TableRow>

<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingLeft="10dp"
android:text="生命值:" />

<ProgressBar
android:id="@+id/bar_life"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2" />

<TextView
android:id="@+id/tv_life1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="0" />
</TableRow>

<TableRow android:layout_marginTop="10dp">

<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingLeft="10dp"
android:text="攻击力:" />

<ProgressBar
android:id="@+id/bar_attack"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2" />

<TextView
android:id="@+id/tv_attack1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="0" />
</TableRow>

<TableRow android:layout_marginTop="10dp">

<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingLeft="10dp"
android:text="敏捷度:" />

<ProgressBar
android:id="@+id/bar_speed"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2" />

<TextView
android:id="@+id/tv_speed1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="0" />
</TableRow>
</TableLayout>

<Button
android:id="@+id/babybtn"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="25dp"
android:drawablePadding="5dp"
android:drawableRight="@android:drawable/ic_menu_add"
android:onClick="click1"
android:text="小宝宝购买装备" />

</LinearLayout>


2、activity_shop.xml布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/L1"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="bzu.edu.cn.equipmentselect.ShopActivity">

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:background="@android:drawable/ic_menu_info_details" />

<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="15dp"
android:text="商品名称"
android:textSize="18sp" />

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:orientation="vertical">

<TextView
android:id="@+id/tv_life"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="生命值"
android:textSize="18dp" />

<TextView
android:id="@+id/tv_attack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="攻击力"
android:textSize="18dp" />

<TextView
android:id="@+id/tv_speed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="敏捷度"
android:textSize="18dp" />
</LinearLayout>
</LinearLayout>

3、属性类Info.java

package cn.edu.bzu.itcast.domain;
import java.io.Serializable;
public class Info implements Serializable {
private String name;
private int life;
private int attack;
private int speed;

public Info(String name, int life, int attack, int speed) {
super();
this.name = name;
this.life = life;
this.attack = attack;
this.speed = speed;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getLife() {
return life;
}

public void setLife(int life) {
this.life = life;
}

public int getAttack() {
return attack;
}

public void setAttack(int attack) {
this.attack = attack;
}

public int getSpeed() {
return speed;
}

public void setSpeed(int speed) {
this.speed = speed;
}
}

4、MainActivity.java

package bzu.edu.cn.equipmentselect;

import android.app.Activity;
import android.content.Intent;

import cn.edu.bzu.itcast.domain.Info;

import android.os.Bundle;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.TextView;

public class MainActivity extends Activity {
private ProgressBar bar_life;
private ProgressBar bar_attack;
private ProgressBar bar_speed;

private TextView tv_life1;
private TextView tv_attack1;
private TextView tv_speed1;
private TextView tv_lable;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//id查找
bar_life = (ProgressBar) findViewById(R.id.bar_life);
bar_attack = (ProgressBar) findViewById(R.id.bar_attack);
bar_speed = (ProgressBar) findViewById(R.id.bar_speed);

tv_life1 = (TextView) findViewById(R.id.tv_life1);
tv_attack1 = (TextView) findViewById(R.id.tv_attack1);
tv_speed1 = (TextView) findViewById(R.id.tv_speed1);
tv_lable=(TextView)findViewById(R.id.tv_lable);
Intent intent=getIntent();
String str=intent.getStringExtra("username");
tv_lable.setText(str+"主人,快给小宝宝买装备吧!");
//赋progressBar最大值
bar_life.setMax(1000);
bar_attack.setMax(1000);
bar_speed.setMax(1000);
}

public void click1(View view) {
Intent intent = new Intent(this, ShopActivity.class);
//返回请求结果,结果码为1
startActivityForResult(intent, 1);
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (data != null) {
//判断结果码是否为10 ,为10给宝宝添加装备
if (resultCode == 10) {
if (requestCode == 1) {
Info info = (Info) data.getExtras().get("info");
//更新progressBar的值
updateProgressBar(info);
}

}
}
}

public void updateProgressBar(Info info) {
//获取progressBar的值
int progressBar1 = bar_life.getProgress();
int progressBar2 = bar_attack.getProgress();
int progressBar3 = bar_speed.getProgress();
//设置progressBar的值
bar_life.setProgress(progressBar1 + info.getLife());
bar_attack.setProgress(progressBar2 + info.getAttack());
bar_speed.setProgress(progressBar3 + info.getSpeed());
//设置文本的值
tv_life1.setText(bar_life.getProgress() + "");
tv_attack1.setText(bar_attack.getProgress() + "");
tv_speed1.setText(bar_speed.getProgress() + "");
}
}

5、ShopActivity.java

package bzu.edu.cn.equipmentselect;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

import cn.edu.bzu.itcast.domain.Info;

/**
* Created by Administrator on 2017/3/26.
*/

public class ShopActivity extends Activity implements View.OnClickListener {
private Info info;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shop);
findViewById(R.id.L1).setOnClickListener(this);
info = new Info("金剑", 100, 100, 20);

//得到控件
TextView tv_name = (TextView) findViewById(R.id.tv_name);
TextView tv_life = (TextView) findViewById(R.id.tv_life);
TextView tv_attack = (TextView) findViewById(R.id.tv_attack);
TextView tv_speed = (TextView) findViewById(R.id.tv_speed);

//赋初始值
tv_name.setText(info.getName() + "");
tv_life.setText("生命力+" + info.getLife());
tv_attack.setText("攻击力+" + info.getAttack());
tv_speed.setText("敏捷度+" + info.getSpeed());
}

public void onClick(View v) {
switch (v.getId()) {
case R.id.L1:
Intent intent = new Intent();
intent.putExtra("info", info);
setResult(10, intent);
finish();
break;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: