博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 标注体重测量仪源码
阅读量:5758 次
发布时间:2019-06-18

本文共 4638 字,大约阅读时间需要 15 分钟。

hot3.png

  首先我们利用网友用JAVA编写的基于android的可视化GUI布局拖拉工具程序 --DroidDraw。布局以下界面:

\
  此页面位于res/layout/main.xml。
  制作接收值页面,页面如下:
\
  此页面位于res/layout/mainlayout.xml,到此为止准备工作全部做好了,接下来正式进入 我们的代码实现功能。。
  主页面代码位于src/cn.terry/BundleObject.java
  代码如下:

  import android.app.Activity;  import android.app.AlertDialog;  import android.os.Bundle;  import android.view.View;  import android.view.View.OnClickListener;  import android.widget.*;  import android.content.DialogInterface;  import android.content.Intent;  import android.graphics.Color;  public class BundleObject extends Activity {  private Button mButton;  private EditText mEditText;  private RadioGroup mRadioGroup;  private double height;  private String Sex;  /** Called when the activity is first created. */  @Override  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.main);  mButton=(Button)findViewById(R.id.confirm);  mButton.setOnClickListener(new OnClickListener() {  @Override  public void onClick(View v) {  // TODO Auto-generated method stub  mEditText=(EditText)findViewById(R.id.heigt);  if(mEditText.getText().toString().length()==0)  {  /* AlertDialog builder = new AlertDialog.Builder(BundleObject.this).create();  builder.setTitle("提示");  builder.setMessage("請輸入您的身高!!");  builder.show();*/  new AlertDialog.Builder(BundleObject.this)  .setMessage("请輸入您的身高")  .setTitle("提示")  .setNeutralButton("确定",new DialogInterface.OnClickListener() {  @Override  public void onClick(DialogInterface dialog, int which) {  // TODO Auto-generated method stub  mEditText.setHighlightColor(Color.RED);  }  }).create()  .show();  return;  }  mRadioGroup=(RadioGroup)findViewById(R.id.sex);  height=Double.parseDouble(mEditText.getText().toString());  if(mRadioGroup.getCheckedRadioButtonId()==R.id.M)  {  Sex="M";  }  else  {  Sex="F";  }  Intent intent=new Intent();  intent.setClass(BundleObject.this, Next.class);  Bundle bun=new Bundle();  bun.putDouble("Height", height);  bun.putString("Sex", Sex);  intent.putExtras(bun);  startActivity(intent);  BundleObject.this.finish();  }  });  }  }
  在此有一点想让大家注意的是:弹出对话框的时候AlertDialog.Builder()这个方法在1.5以上都要加上类名.this 比如 我的页面的名字叫BundleObject.java就必须如下写下   AlertDialog.Builder(BundleObject.this)   1.5以下的版本直接this即可。。   到此为止己经完成了一半的功能了,那么在Acitivity2(Next.java)要如何接收来自Activity1(BundleObject.java)传递过来的数据呢?试想,在Activity1是以   Bundle封装对象,自然在Activity2亦是以Bundle的方式来解开封装的数据咯;程序中以   Bundle bun=this.getIntent().getExtras();   这样的方法来取得Bundle对象传递过来的性别与身高,经过计算之后,显示在屏幕上。   废话到此为止,第二个页面的处理程序如下:
  import java.text.DecimalFormat;  import java.text.NumberFormat;  import android.content.Intent;  import android.app.Activity;  import android.os.Bundle;  import android.view.View;  import android.view.View.OnClickListener;  import android.widget.*;  public class Next extends Activity {  private TextView mTextView01;  private TextView mTextView02;  private Button mButton1;  private String Sex;  private double Height;  private String SextText;  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.mainlayout);  Bundle bun=this.getIntent().getExtras();  Sex=bun.getString("Sex");  Height=bun.getDouble("Height");  if(Sex.equals("M"))  {  SextText="男性";  }  else  {  SextText="女性";  }  //取得標準體重  String Weight=getWeight(Sex, Height);  mTextView01=(TextView)findViewById(R.id.TextView01);  mTextView02=(TextView)findViewById(R.id.TextView02);  String result = "您是一位" + SextText +  "您的身高为:" + Height + "cm";  String result2= "您的标准体重为:" + Weight +"千克";  mTextView01.setText(result);  mTextView02.setText(result2);  mButton1=(Button)findViewById(R.id.Button03);  mButton1.setOnClickListener(new OnClickListener() {  @Override  public void onClick // TODO Auto-generated method stub  Intent intent=new Intent();  intent.setClass(Next.this, BundleObject.class);  startActivity(intent);  Next.this.finish();  }  });  }  //四舍五入的方法  private String format(double num)  {  NumberFormat formatter=new DecimalFormat("0.00");  String s=formatter.format(num);  return s;  }  //取得體重  public String getWeight(String Sex,double height)  {  String Weight="";  if(Sex.equals("M"))  {  Weight=format((height-80)*0.7);  }  else  {  Weight=format((height-70)*0.6);  }  return Weight;  }  }
  有一点需要大家注意的是,如果要在新建的项目多新建一个处理类那必需在配置文件为他显示声明,程序才会运行通过,这里配置文件java的命名方式如下:   AndroidManifest.xml 相当于asp.net 的web.config   为了代码的完整性,我顺便把配置文件也贴出来,高手可以直接跳过
  
  
  
  
  
  
  
  
  
  
  
\

转载:http://www.adobex.com/android/source/details/00000144.htm

转载于:https://my.oschina.net/androidcode/blog/103868

你可能感兴趣的文章
iOS 高性能异构滚动视图构建方案 —— LazyScrollView
查看>>
Java 重载、重写、构造函数详解
查看>>
【Best Practice】基于阿里云数加·StreamCompute快速构建网站日志实时分析大屏
查看>>
HybridDB实例新购指南
查看>>
C语言及程序设计提高例程-35 使用指针操作二维数组
查看>>
华大基因BGI Online的云计算实践
查看>>
Cocos2d-x3.2 Ease加速度
查看>>
[EntLib]关于SR.Strings的使用办法[加了下载地址]
查看>>
中小型网站架构分析及优化
查看>>
写shell的事情
查看>>
负载均衡之Haproxy配置详解(及httpd配置)
查看>>
标准与扩展ACL 、 命名ACL 、 总结和答疑
查看>>
查找恶意的TOR中继节点
查看>>
MAVEN 属性定义与使用
查看>>
shell高级视频答学生while循环问题
查看>>
使用@media实现IE hack的方法
查看>>
《11招玩转网络安全》之第一招:Docker For Docker
查看>>
hive_0.11中文用户手册
查看>>
hiveserver2修改线程数
查看>>
oracle体系结构
查看>>