sencillo índice de cálculo de Android (uso de dos interfaces de pantalla Jump)

Calculadora de IMC

Este uso para saltar entre la actividad, cada aplicación consiste típicamente en múltiples interfaces, cada interfaz es una actividad, la interfaz de salto es un salto entre la actividad.
Actividad Intención con el salto entre el (la intención) de componentes
de montaje Intención está destinado, cada uno de los componentes del programa es una manera importante de interactuar, no sólo la componente de corriente puede especificar las acciones a realizar, también puede ser la transmisión de datos entre los diferentes componentes .
Intención se divide en intención intención explícita e implícita

intención explícita

intención explícita se puede activar directamente especificando el nombre del componente de destino, mediante un método configurado
para lograr Intención (ContextpackageContext, Clase <?> Cls), en el que el primer parámetro es los objetos actividad actual, esto puede ser utilizado, el segundo parámetro iniciar la actividad de destino.
Crear una actividad de destino por este método, el objeto se hace pasar a la actividad de startActivity método (Intención, intención) para iniciar el objetivo de montaje.
Código de la muestra es la siguiente:

Intent intent = new Intent(this,Activity2.class);   //创建Intent对象
startActivity(intent);  //开启Activity2

la intención implícita

intención pantalla intención implícita es relativamente más abstracto, que no indica claramente qué componentes desea abrir el destino, pero el sistema se analiza en base a la información especificada por la información de atributos de acción y categoría, etc., y luego encontrar la actividad de destino.

El siguiente código de ejemplo

Intent intnet = new Intent();
//设置activity动作,该动作要和清单文件中的设置一样
intent.setAction("cn.itcast.START_ACTIVITY");
startActivity(intent);  

El código anterior, no especificó la categoría, debido a la configuración de la categoría en la actividad de destino en el archivo de manifiesto es un valor por defecto al llamar startActivity método (), agregar automáticamente esta categoría a la Intención.
Tenemos que configurar el archivo de lista de objetivos, especificar la acción para responder a la actividad actual y la categoría

El siguiente código de ejemplo

activity android:name="cn,itcast.Activity2"
	<intent-filter>
	<!--设置action属性,需要在代码中根据所设置的name打开指定组件-->
	<action android:name="cn.itcast.START_ACTIVITY"/>
	<category android:name="android.intent.category.DEFAULT"/>
	</intent-filter>
</activity>

Nota: Cada Intención puede especificar sólo una acción, pero puede especificar más de una categoría

El siguiente paso es hacer con la intención de índice de cálculo

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:weightSum="5"
    android:orientation="vertical" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#03A9F4"
        android:text="   身高(米):" />

    <EditText
        android:id="@+id/height"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入身高:" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#03A9F4"
        android:text="   体重(公斤):" />

    <EditText
        android:id="@+id/weight"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入体重:" />
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:textSize="24sp"
        android:textColor="#03A9F4"
        android:layout_margin="30dp"
        android:text="计算体质指数" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:textSize="24sp"
        android:textColor="#03A9F4"
        android:text="         清   除        " />
</LinearLayout>

1 muestra la interfaz de resultados
interfaz 1

MainActivity.java

package com.example.bmi;  //项目包名,一般不用赋值,建项目自动生成的
 
import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.text.DecimalFormat;

public class MainActivity extends AppCompatActivity {
    Button button1, button2;
    EditText heightText, weightText;

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

        button1 = findViewById(R.id.button1);
        button2 = findViewById(R.id.button2);
        heightText = findViewById(R.id.height);
        weightText = findViewById(R.id.weight);

        //j计算按钮事件
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                    clickbutton();
            }
        });
        //清除按钮事件
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                weightText.setText("");
                heightText.setText("");
            }
        });
    }
    //计算按钮事件
    public void clickbutton() {
        String h=heightText.getText().toString();
        String w=weightText.getText().toString();
        //判断输入内容是否为空
        if(h==null||w==null){
            Toast.makeText(MainActivity.this,"提醒:输入为空", Toast.LENGTH_SHORT).show();
            return;
        }
        //初始化身高体重
        double dh=1,dw=1,BMI;
        try {
            //把tv字符串转化为double并赋值
            dh=Double.parseDouble(h);
            dw=Double.parseDouble(w);
        } catch (Exception e) {
            Toast.makeText(MainActivity.this,"提醒:输入非法",Toast.LENGTH_SHORT).show();
            return;
        }
        BMI = dw / (dh * dh);
        //保留两位小数
        DecimalFormat nf = new DecimalFormat("0.00");
        String BMIText1=nf.format(BMI);
        //传递参数到第二个页面
        Intent intent=new Intent(MainActivity.this,Main2Activity.class);
        //intent.setClass(this,Main2Activity.class);
        intent.putExtra("BMI", BMIText1);
        startActivity(intent);


    }
}

activity_main2.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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:weightSum="5"
    tools:context="com.example.bmi.Main2Activity" >

    <ImageView
        android:id="@+id/tp"
        android:layout_weight="2"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:src="@drawable/tu1"
        />
    <TextView
        android:id="@+id/bmi"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#E25A8B"
        android:layout_margin="10dp"
        android:text="BMI:" />
    <TextView
        android:id="@+id/Text2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#03A9F4" />
    <TextView
        android:id="@+id/jy"
        android:layout_weight="1"
        android:gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#EE66A2"
        android:layout_margin="5dp"
        android:text="身体状态:" />
    <TextView
        android:id="@+id/Text4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textColor="#03A9F4" />
</LinearLayout>

Código sección de interpretación:
Android: el src = "@ el dibujable / TU1" // añadir imágenes en la vista de la imagen de la asamblea

2 muestra la interfaz de resultados
2 interfaz

Main2Activity.java

package com.example.bmi;  //项目包名

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;

public class Main2Activity extends AppCompatActivity {
    String zt,sjy;
    String sbmi;
    double dbmi=1;
    TextView BMIText, classificationText,bmi,jy;
    ImageView tp;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);

        bmi=(TextView) findViewById(R.id.bmi);
        jy=(TextView) findViewById(R.id.jy);
        tp=(ImageView) findViewById(R.id.tp);
        BMIText = findViewById(R.id.Text2);
        classificationText = findViewById(R.id.Text4);
        //创建显示意图
        Intent intent=getIntent();
        sbmi=intent.getStringExtra("BMI");
        dbmi=Double.valueOf(sbmi);
        BMIText.setText("您的BMI:"+dbmi);
        //判断
        tp.setImageResource(R.drawable.tu1);
        if(dbmi<=18.4){
            classificationText.setText("偏瘦,建议多吃点东西");
        }
        else if(dbmi<=23.9){
            classificationText.setText("正常,继续保持");
        }
        else if(dbmi<=27.9){
            classificationText.setText("过重,建议少吃点东西,多锻炼身体");
        }
        else {
            classificationText.setText("肥胖,建议少吃多运动");
        }

    }
}

Los resultados muestran ejecutar:
resultados 1
resultados
Vamos!

Publicado cinco artículos originales · ganado elogios 6 · visitas 447

Supongo que te gusta

Origin blog.csdn.net/qq_45844792/article/details/105033615
Recomendado
Clasificación