今天用安卓做个案例,可以给你的小宝宝添加装备。
用到的控件有按钮,进度条(ProgressBar),文本,Image.
下面就是部分代码:
EquipActivity.java
package bzu.edu.cn.activitydemo01;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.TextView;
import bzu.edu.cn.activitydemo01.cn.edu.bzu.domain.Info;
public class EquipActivity extends AppCompatActivity {
private ProgressBar pb1;
private ProgressBar pb2;
private ProgressBar pb3;
private TextView tv_life;
private TextView tv_attack;
private TextView tv_speed;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_equip);
//(1)找到控件
pb1= (ProgressBar) findViewById(R.id.pb1);
pb2= (ProgressBar) findViewById(R.id.pb2);
pb3= (ProgressBar) findViewById(R.id.pb3);
tv_life=(TextView) findViewById(R.id.tv_life);
tv_attack=(TextView) findViewById(R.id.tv_attack);
tv_speed=(TextView) findViewById(R.id.tv_speed);
//初始化进度条最大值
pb1.setMax(1000);
pb2.setMax(1000);
pb3.setMax(1000);
}
//点击按钮 跳转到另一个shop页面 进行购买装备
public void click1(View view)
{
Intent intent=new Intent(this,ShopActivity.class);
//开启一个页面 并返回数据
startActivityForResult(intent,1);
}
//当开启activity 关闭的时候调用方法
protected void onActivityResult(int requestCode,int resultCode,Intent data)
{
if(resultCode==10)
{
//代表数据来源shop
Info info=(Info)data.getExtras().get("info");
//更新ui
updateProgressBar(info);
}
super.onActivityResult(requestCode,resultCode,data);
}
//更新当前控件ui
private void updateProgressBar(Info info) {
//获取进度
int pro1=pb1.getProgress();
int pro2=pb2.getProgress();
int pro3=pb3.getProgress();
pb1.setProgress(pro1+info.getLife());
pb2.setProgress(pro2+info.getAttack());
pb3.setProgress(pro3+info.getSpeed());
//更新textview
tv_life.setText(pb1.getProgress()+"");
tv_attack.setText(pb2.getProgress()+"");
tv_speed.setText(pb3.getProgress()+"");
}
}
activity_eqip.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_equip"
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"
android:orientation="vertical"
tools:context="bzu.edu.cn.activitydemo01.EquipActivity">
<ImageView
android:layout_width="130dp"
android:layout_height="177dp"
android:src="@drawable/baby"
android:layout_marginTop="20dp"
android:layout_gravity="center"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:text="主人,快给小宝宝购买装备吧"/>
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="生命值:"/>
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:id="@+id/pb1" />
<TextView
android:id="@+id/tv_life"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:text="0"/>
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="攻击力:"/>
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:id="@+id/pb2" />
<TextView
android:id="@+id/tv_attack"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:text="0"/>
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp">
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="敏捷度:"/>
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:id="@+id/pb3" />
<TextView
android:id="@+id/tv_speed"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:text="0"/>
</TableRow>
</TableLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp">
<Button
android:text="小宝宝购买装备"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/b2"
android:onClick="click2"
android:drawableRight="@android:drawable/ic_menu_add"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<Button
android:text="主人购买装备"
android:onClick="click1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/b1"
android:drawableRight="@android:drawable/ic_menu_add"
android:layout_marginLeft="11dp"
android:layout_marginStart="11dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</RelativeLayout>
</LinearLayout>
ShopActivity.java
package bzu.edu.cn.activitydemo01;
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.RelativeLayout;
import android.widget.TextView;
import bzu.edu.cn.activitydemo01.cn.edu.bzu.domain.Info;
public class ShopActivity extends AppCompatActivity implements View.OnClickListener {
private TextView tv_name;
private TextView tv_life;
private TextView tv_attack;
private TextView tv_speed;
private Info info;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shop);
//RelativeLayout rl=(RelativeLayout) findViewById(R.id.rl);
findViewById(R.id.rl).setOnClickListener(this);
//rl.setOnClickListener(this);
//初始化数据
info=new Info("金剑",20,100,20);
//找到控件 显示数据
tv_name=(TextView) findViewById(R.id.tv_name);
tv_life=(TextView) findViewById(R.id.tv_life);
tv_attack=(TextView) findViewById(R.id.tv_attack);
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());case R.id.rl://证明的点击的这个布局
//获取当前数据 把info数据返回
Intent intent=new Intent();
intent.tivity_shop.xml
o",info);
//将结果返回调用者 通过onActivityResult方法返回
setResult(10,intent);
//关闭当前页面
finish();
break;
default:
break;
}
}
}
activity_shop.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/rl"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
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="bzu.edu.cn.activitydemo01.ShopActivity">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:orientation="vertical"></LinearLayout>
<TextView
android:id="@+id/tv_life"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="生命值:"
android:layout_marginTop="24dp"
android:layout_alignParentTop="true"
android:layout_alignLeft="@+id/tv_speed"
android:layout_alignStart="@+id/tv_speed" />
<TextView
android:id="@+id/tv_attack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="攻击力:"
android:layout_below="@+id/tv_life"
android:layout_alignLeft="@+id/tv_life"
android:layout_alignStart="@+id/tv_life" />
<TextView
android:id="@+id/tv_speed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="速度:"
android:layout_below="@+id/tv_attack"
android:layout_centerHorizontal="true" />
<TextView
android:id="@+id/tv_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="商品:"
android:layout_alignBaseline="@+id/tv_attack"
android:layout_alignBottom="@+id/tv_attack"
android:layout_toLeftOf="@+id/tv_life"
android:layout_toStartOf="@+id/tv_life"
android:layout_marginRight="18dp"
android:layout_marginEnd="18dp"></TextView>
<View
android:layout_width="30dp"
android:layout_height="30dp"
android:background="@android:drawable/ic_menu_info_details"
android:layout_alignTop="@+id/tv_name"
android:layout_toLeftOf="@+id/tv_name"
android:layout_toStartOf="@+id/tv_name"
android:layout_marginRight="15dp"
android:layout_marginEnd="15dp"></View>
</RelativeLayout>
点击主人购买装备
点击页面,返回到EquipActivity页面
它用到finish的方法。
是不是so easy,你也快给你的小宝宝购买装备吧 __