Advertisement
Ronnison

Formulário Pessoa Android

May 24th, 2018
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 10.77 KB | None | 0 0
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
  3.     xmlns:app="http://schemas.android.com/apk/res-auto"
  4.     xmlns:tools="http://schemas.android.com/tools"
  5.     android:layout_width="match_parent"
  6.     android:layout_height="match_parent"
  7.     android:background="#d1c2d3"
  8.     tools:context="com.example.ronnison.myform.MainActivity">
  9.  
  10.     <LinearLayout
  11.         android:layout_width="match_parent"
  12.         android:layout_height="match_parent"
  13.         android:orientation="vertical">
  14.         <TextView
  15.             android:layout_width="wrap_content"
  16.             android:layout_height="wrap_content"
  17.             android:text="@string/textNome"
  18.             android:textSize="25sp"/>
  19.  
  20.         <EditText
  21.             android:id="@+id/txtNome"
  22.             android:layout_width="match_parent"
  23.             android:layout_height="wrap_content"
  24.             android:hint="@string/textNome"/>
  25.  
  26.         <EditText
  27.             android:id="@+id/txtAltura"
  28.             android:layout_width="match_parent"
  29.             android:layout_height="wrap_content"
  30.             android:inputType="numberDecimal"
  31.             android:digits="1234567890."
  32.             android:hint="@string/editAltura"/>
  33.  
  34.         <TextView
  35.             android:layout_width="wrap_content"
  36.             android:layout_height="wrap_content"
  37.             android:text="@string/txtOcupacao"
  38.             android:textSize="25sp"
  39.             android:padding="20sp"
  40.             android:layout_margin="10sp"/>
  41.  
  42.         <CheckBox
  43.             android:id="@+id/checkEstudante"
  44.             android:layout_width="wrap_content"
  45.             android:layout_height="wrap_content"
  46.             android:text="@string/checkEstudante"
  47.             android:textSize="18sp"/>
  48.  
  49.         <CheckBox
  50.             android:id="@+id/checkColaborador"
  51.             android:layout_width="wrap_content"
  52.             android:layout_height="wrap_content"
  53.             android:text="@string/checkColaborador"
  54.             android:textSize="18sp"/>
  55.  
  56.         <CheckBox
  57.             android:id="@+id/checkProfessor"
  58.             android:layout_width="wrap_content"
  59.             android:layout_height="wrap_content"
  60.             android:text="@string/checkProfessor"
  61.             android:textSize="18sp"/>
  62.  
  63.         <TextView
  64.             android:layout_width="wrap_content"
  65.             android:layout_height="wrap_content"
  66.             android:text="@string/txtSexo"
  67.             android:textSize="25sp"
  68.             android:padding="20sp"
  69.             android:layout_margin="10sp"/>
  70.  
  71.         <RadioGroup
  72.             android:id="@+id/rgSexo"
  73.             android:layout_width="match_parent"
  74.             android:layout_height="wrap_content">
  75.  
  76.             <RadioButton
  77.                 android:id="@+id/rbMasc"
  78.                 android:layout_width="wrap_content"
  79.                 android:layout_height="wrap_content"
  80.                 android:text="@string/rbMasc"
  81.                 android:textSize="18sp"/>
  82.  
  83.             <RadioButton
  84.                 android:id="@+id/rbFem"
  85.                 android:layout_width="wrap_content"
  86.                 android:layout_height="wrap_content"
  87.                 android:text="@string/rbFem"
  88.                 android:textSize="18sp"/>
  89.  
  90.             <RadioButton
  91.                 android:id="@+id/rbOutros"
  92.                 android:layout_width="wrap_content"
  93.                 android:layout_height="wrap_content"
  94.                 android:text="@string/rboutros"
  95.                 android:textSize="18sp"/>
  96.  
  97.         </RadioGroup>
  98.  
  99.         <Spinner
  100.             android:layout_width="match_parent"
  101.             android:layout_height="wrap_content"/>
  102.  
  103.         <SeekBar
  104.             android:layout_width="match_parent"
  105.             android:layout_height="wrap_content" />
  106.         <TextView
  107.             android:layout_width="wrap_content"
  108.             android:layout_height="wrap_content"
  109.             android:text="0"/>
  110.  
  111.         <Button
  112.             android:id="@+id/buttonValores"
  113.             android:layout_width="match_parent"
  114.             android:layout_height="wrap_content"
  115.             android:text="@string/buttonImprimir"/>
  116.  
  117.         <Button
  118.             android:id="@+id/buttonLimpar"
  119.             android:layout_width="match_parent"
  120.             android:layout_height="wrap_content"
  121.             android:text="@string/buttonLimpar"/>
  122.  
  123.     </LinearLayout>
  124.  
  125. </ScrollView>
  126.  
  127. package com.example.ronnison.myform;
  128.  
  129. import android.support.v7.app.AppCompatActivity;
  130. import android.os.Bundle;
  131. import android.view.View;
  132. import android.widget.Button;
  133. import android.widget.CheckBox;
  134. import android.widget.EditText;
  135. import android.widget.RadioButton;
  136. import android.widget.RadioGroup;
  137. import android.widget.Toast;
  138.  
  139. import java.io.IOException;
  140. import java.lang.reflect.Array;
  141. import java.util.ArrayList;
  142.  
  143. public class MainActivity extends AppCompatActivity
  144.     implements View.OnClickListener{
  145.  
  146.     private EditText editNome, editAltura;
  147.     private CheckBox checkEstudante,
  148.                      checkColaborador,
  149.                      checkProfessor;
  150.     private RadioGroup rg;
  151.     private RadioButton rbMasc,
  152.                         rbFem,
  153.                         rbOutros;
  154.     private Button buttonValores,
  155.                    buttonLimpar;
  156.  
  157.     @Override
  158.     protected void onCreate(Bundle savedInstanceState) {
  159.         super.onCreate(savedInstanceState);
  160.         setContentView(R.layout.activity_main);
  161.  
  162.         editNome = findViewById(R.id.txtNome);
  163.         editAltura = findViewById(R.id.txtAltura);
  164.         checkEstudante = findViewById(R.id.checkEstudante);
  165.         checkColaborador = findViewById(R.id.checkColaborador);
  166.         checkProfessor = findViewById(R.id.checkProfessor);
  167.         rg = findViewById(R.id.rgSexo);
  168.         rbMasc = findViewById(R.id.rbMasc);
  169.         rbFem = findViewById(R.id.rbFem);
  170.         rbOutros = findViewById(R.id.rbOutros);
  171.         buttonValores = findViewById(R.id.buttonValores);
  172.         buttonLimpar = findViewById(R.id.buttonLimpar);
  173.  
  174.         buttonValores.setOnClickListener(this);
  175.     }
  176.  
  177.     public void onClick (View v) {
  178.         try{
  179.             if(checkEstudante.isChecked() ||
  180.                     checkColaborador.isChecked() ||
  181.                     checkProfessor.isChecked()) {
  182.                 if (rbMasc.isChecked() ||
  183.                         rbFem.isChecked() ||
  184.                         rbOutros.isChecked()) {
  185.                     StringBuilder sb = new StringBuilder();
  186.                     sb.append(editNome.getText().toString() + ", ");
  187.                     sb.append(Double.parseDouble(editAltura.getText().toString()) + ", ");
  188.                     sb.append(
  189.                         checkEstudante.isChecked() ? checkEstudante.getText().toString() + ", ": ""
  190.                     );
  191.                     sb.append(
  192.                         checkColaborador.isChecked() ? checkColaborador.getText().toString() + ", ": ""
  193.                     );
  194.                     sb.append(
  195.                         checkProfessor.isChecked() ? checkProfessor.getText().toString() + ", ": ""
  196.                     );
  197.                     sb.append(
  198.                         rbFem.isChecked() ? rbFem.getText().toString() + ", ": ""
  199.                     );
  200.                     sb.append(
  201.                         rbMasc.isChecked() ? rbMasc.getText().toString() + ", ": ""
  202.                     );
  203.                     sb.append(
  204.                         rbOutros.isChecked() ? rbOutros.getText().toString() + ", ": ""
  205.                     );
  206.  
  207.                     String nome = editNome.getText().toString();
  208.                     double alt = Double.parseDouble(
  209.                             editAltura.getText()
  210.                                     .toString());
  211.                     ArrayList<String> ocupacao = new ArrayList<>();
  212.                     ocupacao.add(
  213.                         checkEstudante.isChecked() ?
  214.                                 checkEstudante.getText().toString() : ""
  215.                     );
  216.                     ocupacao.add(
  217.                             checkColaborador.isChecked() ?
  218.                                     checkColaborador.getText().toString() : ""
  219.                     );
  220.                     ocupacao.add(
  221.                             checkProfessor.isChecked() ?
  222.                                     checkProfessor.getText().toString() : ""
  223.                     );
  224.                     String sexo = "";
  225.                     if (rbFem.isChecked()) {
  226.                         sexo = rbFem.getText().toString();
  227.                     } else if (rbMasc.isChecked()) {
  228.                         sexo = rbMasc.getText().toString();
  229.                     } else if (rbOutros.isChecked()){
  230.                         sexo = rbOutros.getText().toString();
  231.                     }
  232.  
  233.                     Pessoa p1 = new Pessoa(nome, alt, ocupacao, sexo);
  234.  
  235.                     Toast.makeText(this,
  236.                             p1.toString(),
  237.                             Toast.LENGTH_SHORT).show();
  238.                 }
  239.             }
  240.         } catch (Exception e) {
  241.             e.printStackTrace();
  242.             editAltura.setError( "Errou na entrada da altura");
  243.         }
  244.     }
  245. }
  246.  
  247. package com.example.ronnison.myform;
  248.  
  249. import android.os.Parcel;
  250. import android.os.Parcelable;
  251.  
  252. import java.util.ArrayList;
  253.  
  254. /**
  255.  * Created by ronnison on 18/05/18.
  256.  */
  257.  
  258. public class Pessoa implements Parcelable {
  259.  
  260.     private String nome;
  261.     private double altura;
  262.     private ArrayList<String> ocupacoes;
  263.     private String sexo;
  264.  
  265.     public Pessoa(String nome,
  266.                   double altura, ArrayList<String> ocupacoes,
  267.                   String sexo) {
  268.         this.nome = nome;
  269.         this.altura = altura;
  270.         this.ocupacoes = ocupacoes;
  271.         this.sexo = sexo;
  272.     }
  273.  
  274.     protected Pessoa(Parcel in) {
  275.         nome = in.readString();
  276.         altura = in.readDouble();
  277.         ocupacoes = in.createStringArrayList();
  278.         sexo = in.readString();
  279.     }
  280.  
  281.     public static final Creator<Pessoa> CREATOR =
  282.             new Creator<Pessoa>() {
  283.         @Override
  284.         public Pessoa createFromParcel(Parcel in) {
  285.             return new Pessoa(in);
  286.         }
  287.  
  288.         @Override
  289.         public Pessoa[] newArray(int size) {
  290.             return new Pessoa[size];
  291.         }
  292.     };
  293.  
  294.     @Override
  295.     public int describeContents() {
  296.         return 0;
  297.     }
  298.  
  299.     @Override
  300.     public void writeToParcel(Parcel dest, int flags) {
  301.         dest.writeString(nome);
  302.         dest.writeDouble(altura);
  303.         dest.writeStringList(ocupacoes);
  304.         dest.writeString(sexo);
  305.     }
  306.  
  307.     @Override
  308.     public String toString() {
  309.         return "Pessoa{" +
  310.                 "nome='" + nome + '\'' +
  311.                 ", altura=" + altura +
  312.                 ", ocupacoes=" + ocupacoes.toString() +
  313.                 ", sexo='" + sexo + '\'' +
  314.                 '}';
  315.     }
  316. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement