Autore Topic: Dimensioni Button , coincidenza psw e Firebase  (Letto 434 volte)

Offline Galbatte

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Windows 10
Dimensioni Button , coincidenza psw e Firebase
« il: 11 Maggio 2017, 19:09:36 CEST »
0
Ciao a tutti sto creando la mia prima app , per ora ho creato due activity la prima una semplice activity con un button che ti manda all'activity per registrarti all'app e la seconda è la registrazione , ho gia collegato Firebase solo che ho alcuni problemi.
I dati sono i seguenti:
Username
email
psw
ripeti psw
data di nascita
Firebase mi riconosce solo email e psw.
1)vorrei capire come fare a far si che se le due pasw coincidono ti fa registrare se no , no.
2)Come inserire in Firebase oltre alla email , anche i dati come Username e data di nascita.
3)una volta fatti i primi due punti far si che se lutente è gia registrato ed entra nell'app bypassare l'activity registrazione ed entrare in un eventuale terza activity che sarà il cuore dell'app.
4)In relativeLayout come posso impostare che il mio Button(che è un imageButton) sia ad un tot di dp dal bordo dello schermo? cosi si adattera ad ogni telefono sempre con quelle distanze.
Vi posto i vari codici
Activity principale
Codice (Java): [Seleziona]
package com.atletico.andrea.atletico;

        import android.app.ProgressDialog;
        import android.support.annotation.NonNull;
        import android.support.v7.app.AppCompatActivity;
        import android.os.Bundle;
        import android.text.TextUtils;
        import android.view.View;
        import android.widget.Button;
        import android.widget.EditText;
        import android.widget.Toast;

        import com.google.android.gms.tasks.OnCompleteListener;
        import com.google.android.gms.tasks.Task;
        import com.google.firebase.auth.AuthResult;
        import com.google.firebase.auth.FirebaseAuth;

public class Signup extends AppCompatActivity implements View.OnClickListener {

    //defining view objects
    private EditText editTextEmail;
    private EditText editTextPassword;
    private ProgressDialog progressDialog;


    //defining firebaseauth object
    private FirebaseAuth firebaseAuth;

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

        //initializing firebase auth object
        firebaseAuth = FirebaseAuth.getInstance();

        //initializing views
        editTextEmail = (EditText) findViewById(R.id.Username);
        editTextPassword = (EditText) findViewById(R.id.Password1);

        Button buttonRegistrazione = (Button) findViewById(R.id.Registrati);

        progressDialog = new ProgressDialog(this);

        //attaching listener to button
        buttonRegistrazione.setOnClickListener(this);
    }

    private void registerUser(){

        //getting email and password from edit texts
        String email = editTextEmail.getText().toString().trim();
        String password  = editTextPassword.getText().toString().trim();

        //checking if email and passwords are empty
        if(TextUtils.isEmpty(email)){
            Toast.makeText(this,"Please enter email",Toast.LENGTH_LONG).show();
            return;
        }

        if(TextUtils.isEmpty(password)){
            Toast.makeText(this,"Please enter password",Toast.LENGTH_LONG).show();
            return;


        }

        //if the email and password are not empty
        //displaying a progress dialog

        progressDialog.setMessage("Stai diventando uno di noi!");
        progressDialog.show();

        //creating a new user
        firebaseAuth.createUserWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        //checking if success
                        if(task.isSuccessful()){
                            //display some message here
                            Toast.makeText(Signup.this,"Sei uno dei Nostri!",Toast.LENGTH_LONG).show();
                        }else{
                            //display some message here
                            Toast.makeText(Signup.this,"Riprova e raggiungici!",Toast.LENGTH_LONG).show();
                        }
                        progressDialog.dismiss();
                    }
                });

    }

    @Override
    public void onClick(View view) {
        //calling register method on click
        registerUser();
    }
file xml
Codice (Java): [Seleziona]
<?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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/campo"
    tools:context="com.atletico.andrea.atletico.Home">

    <ImageButton
        android:id="@+id/atleticoButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@mipmap/logo_atletico"
        android:translationX="1dp"
        android:translationY="1dp"
        tools:layout_centerInParent="true"
        tools:layout_editor_absoluteX="100dp"
        tools:layout_editor_absoluteY="177dp"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"/>




</RelativeLayout>
Activity registrazione
Codice (Java): [Seleziona]
package com.atletico.andrea.atletico;

        import android.app.ProgressDialog;
        import android.support.annotation.NonNull;
        import android.support.v7.app.AppCompatActivity;
        import android.os.Bundle;
        import android.text.TextUtils;
        import android.view.View;
        import android.widget.Button;
        import android.widget.EditText;
        import android.widget.Toast;

        import com.google.android.gms.tasks.OnCompleteListener;
        import com.google.android.gms.tasks.Task;
        import com.google.firebase.auth.AuthResult;
        import com.google.firebase.auth.FirebaseAuth;

public class Signup extends AppCompatActivity implements View.OnClickListener {

    //defining view objects
    private EditText editTextEmail;
    private EditText editTextPassword;
    private ProgressDialog progressDialog;


    //defining firebaseauth object
    private FirebaseAuth firebaseAuth;

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

        //initializing firebase auth object
        firebaseAuth = FirebaseAuth.getInstance();

        //initializing views
        editTextEmail = (EditText) findViewById(R.id.Username);
        editTextPassword = (EditText) findViewById(R.id.Password1);

        Button buttonRegistrazione = (Button) findViewById(R.id.Registrati);

        progressDialog = new ProgressDialog(this);

        //attaching listener to button
        buttonRegistrazione.setOnClickListener(this);
    }

    private void registerUser(){

        //getting email and password from edit texts
        String email = editTextEmail.getText().toString().trim();
        String password  = editTextPassword.getText().toString().trim();

        //checking if email and passwords are empty
        if(TextUtils.isEmpty(email)){
            Toast.makeText(this,"Please enter email",Toast.LENGTH_LONG).show();
            return;
        }

        if(TextUtils.isEmpty(password)){
            Toast.makeText(this,"Please enter password",Toast.LENGTH_LONG).show();
            return;


        }

        //if the email and password are not empty
        //displaying a progress dialog

        progressDialog.setMessage("Stai diventando uno di noi!");
        progressDialog.show();

        //creating a new user
        firebaseAuth.createUserWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        //checking if success
                        if(task.isSuccessful()){
                            //display some message here
                            Toast.makeText(Signup.this,"Sei uno dei Nostri!",Toast.LENGTH_LONG).show();
                        }else{
                            //display some message here
                            Toast.makeText(Signup.this,"Riprova e raggiungici!",Toast.LENGTH_LONG).show();
                        }
                        progressDialog.dismiss();
                    }
                });

    }

    @Override
    public void onClick(View view) {
        //calling register method on click
        registerUser();
    }
}
file xml ( tralasciate che si chiama "login" e la classe "signup"
Codice (Java): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@mipmap/campo"
    android:clickable="false"
    android:orientation="vertical"
    android:visibility="visible">


    <EditText
        android:id="@+id/Email"
        style="@style/Widget.AppCompat.AutoCompleteTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/Password1"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="20dp"
        android:background="@drawable/edittextstyle"
        android:ems="10"
        android:hint="@string/email"
        android:inputType="textEmailAddress"
        android:textAlignment="center"
        android:textColor="@color/blu_atletico"
        android:textSize="24sp"
        android:textStyle="bold" />

    <EditText
        android:id="@+id/Username"
        style="@style/Widget.AppCompat.AutoCompleteTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="19dp"
        android:background="@drawable/edittextstyle"
        android:ems="10"
        android:hint="@string/user"
        android:inputType="text"
        android:textAlignment="center"
        android:textColor="@color/blu_atletico"
        android:textSize="24sp"
        android:textStyle="bold"
        android:layout_above="@+id/Email"
        android:layout_alignLeft="@+id/Email"
        android:layout_alignStart="@+id/Email" />

    <EditText
        android:id="@+id/Password2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/Password1"
        android:layout_alignStart="@+id/Password1"
        android:layout_centerVertical="true"
        android:background="@drawable/edittextstyle"
        android:ems="10"
        android:hint="@string/ripetiPassword"
        android:inputType="textPassword"
        android:textAlignment="center"
        android:textSize="24sp"
        android:textStyle="bold" />

    <EditText
        android:id="@+id/Password1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/Password2"
        android:layout_alignLeft="@+id/Username"
        android:layout_alignStart="@+id/Username"
        android:layout_marginBottom="23dp"
        android:background="@drawable/edittextstyle"
        android:ems="10"
        android:hint="@string/password"
        android:inputType="textPassword"
        android:textAlignment="center"
        android:textColor="@color/blu_atletico"
        android:textSize="24sp"
        android:textStyle="bold" />

    <EditText
        android:id="@+id/data"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:background="@drawable/edittextstyle"
        android:ems="10"
        android:hint="@string/datar"
        android:inputType="date"
        android:textAlignment="center"
        android:textColor="@color/blu_atletico"
        android:textSize="24sp"
        android:textStyle="bold"
        android:layout_below="@+id/Password2"
        android:layout_alignLeft="@+id/Password2"
        android:layout_alignStart="@+id/Password2" />

    <Button
        android:id="@+id/Registrati"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/data"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="24dp"
        android:background="@drawable/edittextstyle"
        android:text="@string/signup"
        android:textAppearance="@style/TextAppearance.AppCompat.Button" />

</RelativeLayout>
Grazie mille.

Offline tonno16

  • Utente storico
  • *****
  • Post: 1233
  • Respect: +60
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Dimensioni Button , coincidenza psw e Firebase
« Risposta #1 il: 11 Maggio 2017, 20:54:08 CEST »
0
Devi creare una callback per fare il check se l'utente è loggiato. Il tutorial di google fa esattamente questo nel metodo onStart(). Per salvare altri dati devi per forza pusharli come normali campi all' interno del db

Offline Galbatte

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Windows 10
Re:Dimensioni Button , coincidenza psw e Firebase
« Risposta #2 il: 11 Maggio 2017, 21:10:10 CEST »
0
Ok grazie , per le password?

Offline tonno16

  • Utente storico
  • *****
  • Post: 1233
  • Respect: +60
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Dimensioni Button , coincidenza psw e Firebase
« Risposta #3 il: 12 Maggio 2017, 12:02:15 CEST »
0
Mi sembra molto facile. Metti due editext. Ogni volta che l'utente clicca registrati verifichi che i due testi siano uguali. Non capisco il problema