深入浅出Android:初识Intent(BMI)
1、strings.xml
1 <?xml version="1.0" encoding="utf-8"?> 2 <resources> 3 4 <string name="app_name">BMI</string> 5 <string name="height">身高(cm)</string> 6 <string name="weight">体重(kg)</string> 7 <string name="bmi_btn">计算BMI值</string> 8 <string name="bmi_result">你的BMI值是</string> 9 <string name="about_title">关于Android BMI</string> 10 <string name="about_msg">Android BMI Calc\n 11 作者 lovemu\n\n 12 lovemu+android[at]gmail.com</string> 13 <string name="ok_label">确认</string> 14 <string name="homepage_label">首页</string> 15 <string name="homepage_uri">http://androidbmi.googlecode.com/</string> 16 <string name="hello_world">Hello world!</string> 17 <string name="menu_settings">Settings</string> 18 19 </resources>
2、MainActivity.java
1 package example.bmi; 2 3 import java.text.DecimalFormat; 4 5 import android.net.Uri; 6 import android.os.Bundle; 7 import android.app.Activity; 8 import android.app.AlertDialog; 9 import android.content.DialogInterface; 10 import android.content.Intent; 11 import android.view.Menu; 12 import android.view.View; 13 import android.view.View.OnClickListener; 14 import android.widget.Button; 15 import android.widget.EditText; 16 import android.widget.TextView; 17 18 public class MainActivity extends Activity { 19 20 @Override 21 protected void onCreate(Bundle savedInstanceState) { 22 super.onCreate(savedInstanceState); 23 setContentView(R.layout.activity_main); 24 25 findViews(); 26 setListensers(); 27 } 28 private Button button_calc; 29 private EditText field_height; 30 private EditText field_weight; 31 private TextView view_result; 32 private TextView view_suggest; 33 private void findViews() 34 { 35 button_calc=(Button)findViewById(R.id.submit); 36 field_height=(EditText)findViewById(R.id.height); 37 field_weight=(EditText)findViewById(R.id.weight); 38 view_result=(TextView)findViewById(R.id.result); 39 view_suggest=(TextView)findViewById(R.id.suggest); 40 } 41 private void setListensers() 42 { 43 button_calc.setOnClickListener(calcBMI); 44 } 45 private Button.OnClickListener calcBMI=new Button.OnClickListener() 46 { 47 public void onClick(View v) 48 { 49 DecimalFormat nf=new DecimalFormat("0.00"); 50 51 double height=Double.parseDouble(field_height.getText().toString())/100; 52 double weight=Double.parseDouble(field_weight.getText().toString()); 53 double BMI=weight/(height*height); 54 view_result.setText(getText(R.string.bmi_result)+nf.format(BMI)); 55 //give health advice 56 if(BMI>25) 57 { 58 view_suggest.setText(R.string.advice_heavy); 59 } 60 else if(BMI<20) 61 { 62 view_suggest.setText(R.string.advice_light); 63 } 64 else 65 { 66 view_suggest.setText(R.string.advice_average); 67 } 68 openOptionsDialog(); 69 } 70 }; 71 private void openOptionsDialog() 72 { 73 new AlertDialog.Builder(MainActivity.this) 74 .setTitle(R.string.about_title) 75 .setMessage(R.string.about_msg) 76 .setPositiveButton(R.string.ok_label, 77 new DialogInterface.OnClickListener() { 78 public void onClick( 79 DialogInterface dialoginterface,int i){ 80 } 81 82 }) 83 .setNegativeButton(R.string.homepage_label, 84 new DialogInterface.OnClickListener() { 85 86 @Override 87 public void onClick(DialogInterface dialog, int which) { 88 // TODO Auto-generated method stub 89 Uri uri=Uri.parse(getString(R.string.homepage_uri)); 90 Intent intent=new Intent(Intent.ACTION_VIEW,uri); 91 startActivity(intent); 92 } 93 }) 94 .show(); 95 } 96 97 @Override 98 public boolean onCreateOptionsMenu(Menu menu) { 99 // Inflate the menu; this adds items to the action bar if it is present. 100 getMenuInflater().inflate(R.menu.activity_main, menu); 101 return true; 102 } 103 104 }
3、效果
深入浅出Android:初识Intent(BMI)相关推荐
- Android初识-Intent用法进阶篇
1.activity之间参数传递 第一个activity代码,启动activity并传递参数 Intent ac4 = new Intent(this,SecendActivity.class);ac ...
- Android Studio计算BMI小软件
计算BMI安卓小软件 一.简单安卓入门小项目 开发软件:Android Studio,本软件有两个页面,一个是输入身高和体重页面,另一个是结果界面(注意:这个背景图名字为 bb.png ,图片会放到博 ...
- android intent email,Android Email Intent
问题 I've set up two buttons. One opens the compose sms intent and the other opens the compose email i ...
- 深入浅出Android系统启动流程
转载请标明出处:[顾林海的博客] 本篇文章已授权微信公众号 顾林海 独家发布 init进程启动过程 init进程概述 Android系统基于Linux,init进程是Android系统中用户空间的第一 ...
- Android中Intent传递对象的两种方法(Serializable,Parcelable)
这篇文章转自博客园 Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putPa ...
- 3.1 Android组件intent filter
3.1.0 Intent filter基本概念 前面章节我们说到了Intent,Intent对象中除了ComponentName可以直接指定目标组件外,其它的属性都无法直接指定目标组件.当然我们这里不 ...
- 【Android】 Intent应用详解
转载:http://blog.csdn.net/liuhe688/article/details/7162988 看似尋常最奇崛,成如容易卻艱辛.北宋.王安石 看似普通的事情其实最不同寻常,并不是简简 ...
- Android的Intent Action 大全
为什么80%的码农都做不了架构师?>>> 1.Intent的用法: (1)Action跳转 1. 使用Action跳转,当程序AndroidManifest.xml中某一个 A ...
- Android中Intent传递Object和ArrayListObject对象---笔记
首先看一下Intent的官方的API. 传递一些基本类型数据的方法如下: putExtra(String name, int value) putExtra(String name, String v ...
最新文章
- SQL操作的组成部分-数据控制
- ft2232驱动安装方法_关于Win10无法安装英伟达驱动的处理方法
- Python学习笔记:常用内建模块7XML
- 【洛谷 T47488】 D:希望 (点分治)
- ALAssetsLibrary-代码操作iOS相册资源
- 【蓝桥杯 - 真题】六角幻方(dfs+剪枝)
- PyQt5代码触发QTreeWidget的列表中某个item点击信号
- php如何控制用户对图片的访问 PHP禁止图片盗链
- msp430入门编程46
- Kubernetes Metrics-Server
- 重庆计算机教师招聘 专业技能测试什么,教师招聘考试面试,专业技能测试考什么?全在这了...
- Windows学习总结(11)——Windows批处理命令编写代码及小程序简介
- 为什么每个邮件收到后都会有一个htm的附件_Python3.x 发送各种形式的告警邮件内容...
- url安全处理函数+php,php常用的url处理函数汇总
- Java多线程-while死循环
- java复用的具体实现_Java应用架构读书笔记(6):实现复用
- Multisim里导入没有的元器件(以NPN型三极管2N9013为例)
- 开学数码必买清单推荐,2022年开学季最值得入手的好物
- 网络互连(IPV4+NAT技术+ARP+IPV6)
- 哪款游戏蓝牙耳机好用?好用的游戏蓝牙耳机推荐
热门文章
- multism中ui和uo应该怎么表示_王者荣耀:梦泪直播时谈到体验服大改动,表示装备的改动很关键...
- 算法题 如何找到数组中重复的数字
- Java基础——虚拟机结构
- 如何调整反光镜和座椅的位置 为您支招
- 《Mali OpenCL SDK v1.1.0》教程样例之一“Hello World”
- 小窍门解决大问题(组图)
- MP3技术白皮书-音频格式全解析
- 关于编译FFMPEG的初级教程
- Linux 的 chmod 命令,对一个目录及其子目录所有文件添加权限
- 遍历Map key-value的两种方法、遍历Set方法