-1
votes

REVERVISHYID retourne null pour edittext, app achabure

Mon application se bloque lorsque j'essaie d'exécuter le code. J'essaie de créer une inscription en prenant le nom de l'utilisateur. Si j'essaie de courir sans xxx

alors il montre la page avec une disposition appropriée Lorsque le code ci-dessus est présent lors de l'exécution du code, l'application se ferme sans rien. Le code Java est inférieur xxx

Le code de mise en page est inférieur à xxx

aidez pourquoi il se bloque.


6 commentaires

Est-ce que cela répond à votre question? Malheureusement, MyApp a arrêté. Comment puis-je résoudre ce problème?


NULL signifie que la vue n'a pas été trouvée. Êtes-vous sûr que vous regardez Activity_sign_up.xml?


@A_LOCAL_NOBODY: répondit bien. :-)


Malheureusement, peu d'agrafage @robindavies, mais il existe pour une bonne raison que je dirais, car apprendre à déboguer est plus utile que d'avoir à trouver de l'aide en ligne :)


Utilisez ce nom = FOOTVIEWBYID (r.id.textinCuTlayout2) .geteDittText ();


:-) Pas un problème de pointeur nul, en fait. Vous devrez apprendre à déboguer les applications Android. Voir la réponse de @ a_local_nobody. Le problème réel est que TextInputLayout est un contrôle composite avancé qui n'est pas un editext, de sorte que la distribution a échoué. Mais vous n'allez pas très loin dans le monde Android si vous ne pouvez pas résoudre des problèmes comme celui-ci avec un débogueur. Il n'est pas humainement possible de développer des logiciels comme vous le faites.


4 Réponses :


0
votes

Changez votre (edittext) en (TextInputLayout)

public class Sign_up extends AppCompatActivity {

private TextInputLayout name;
private Button regButton;
//private TextView userLogin;
private FirebaseAuth firebaseAuth;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sign_up);
    getSupportActionBar().setTitle("Join The Family");
    setupUIviews();}


private void setupUIviews(){

    name = (TextInputLayout) findViewById(R.id.textInputLayout2);

}

}


0 commentaires

1
votes

Je pense que votre crash de votre application n'est pas la question que vous posez:

name=(EditText)findViewById(R.id.textInputLayout2);


0 commentaires

1
votes

textinputlayout n'est pas un editext, vous pouvez obtenir editText par textinputlayout.geteDittext . .


0 commentaires

0
votes

Vous obtiendrez le texte d'entrée de editext code> pas de textinpuLayout code>. Donnez ID à EditText Code> au lieu de TextInpuLayout CODE>.

<com.google.android.material.textfield.TextInputLayout
    android:layout_width="350dp"
    android:layout_height="wrap_content"
    android:layout_marginTop="100dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">



    <com.google.android.material.textfield.TextInputEditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textInputLayout2"        //or name it whatever you want
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:hint="Full Name" />
</com.google.android.material.textfield.TextInputLayout>


0 commentaires