2017-07-27 3 views
-1

は、誰かがどのように私はdialog.dismiss()alertdialog.dismissにしようとしていますので、ダイアログを閉じ私を見ることができますが、私はそれを象徴してもアクセスを解決できないというエラーを取得しています実際に助ける電子メールとパスワードの入力を使用してくださいコールdialog.dismissダイアログ

package com.example.marcusgrant.test12345; 

import android.os.Bundle; 
import android.support.annotation.Nullable; 
import android.support.v7.app.AlertDialog; 
import android.support.v7.app.AppCompatActivity; 

import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.ImageView; 
import android.widget.Toast; 

public class Console_Activity extends AppCompatActivity { 

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


    final ImageView xShowDialog = (ImageView) findViewById(R.id.XboxImBtn); 


    ImageView pShowDialog = (ImageView) findViewById(R.id.PsnImBtn); 


    xShowDialog.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      AlertDialog.Builder mBuilder = new AlertDialog.Builder(Console_Activity.this); 
      View mView = getLayoutInflater(). inflate(R.layout.xdialog_signin, null); 

      final EditText XEmail = (EditText) mView.findViewById(R.id.etEmail); 
      final EditText Xpassword = (EditText) mView.findViewById(R.id.etPassword); 
      Button XLogbtn = (Button) mView.findViewById(R.id.Logbtn); 
      Button XNtnbtn = (Button) mView.findViewById(R.id.ntnbtn); 

      XLogbtn.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        if(!XEmail.getText().toString().isEmpty() && !Xpassword.getText().toString().isEmpty()) 
        { 
         Toast.makeText(Console_Activity.this, R.string.successful_login, Toast.LENGTH_SHORT).show(); 
         xShowDialog.setImageResource(R.drawable.xboxbuttongreen); 

      //cannot resolve symbol 'alertdialog' 
      dialog.dismiss(); 


        } 
        else 
        { 
         Toast.makeText(Console_Activity.this, R.string.error_login_message, Toast.LENGTH_SHORT).show(); 
        } 
       } 
      }); 




      XNtnbtn.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 

        //cannot resolve symbol 'alertdialog' 
        alertDialog.dismiss(); 
       } 
      }); 



      mBuilder.setView(mView); 
      AlertDialog dialog = mBuilder.create(); 
      dialog.show(); 

     } 
    }); 

} 



    } 
+0

さて、あなたは持っていけません 'あなたのコードで宣言されている "alterDialog'変数。 – ZeekHuge

+0

の代わりに 'dialog.dismiss()'を使いたいのですが、最初のonclicklistenerでそれを試してみました – Bogle

答えて

1

実際に使用する前に変数を宣言する必要があります。コードの場合は、onCreate()

はこのような何かにあなたのコードを変更し

...それは順番に実行されますので、あなたはそれを使用する前にdialog変数を宣言する必要があります:

 ... 
     final EditText XEmail = (EditText) mView.findViewById(R.id.etEmail); 
     final EditText Xpassword = (EditText) mView.findViewById(R.id.etPassword); 
     Button XLogbtn = (Button) mView.findViewById(R.id.Logbtn); 
     Button XNtnbtn = (Button) mView.findViewById(R.id.ntnbtn); 

     // Changes here 
     mBuilder.setView(mView); 
     final AlertDialog dialog = mBuilder.create(); 


     XLogbtn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if(!XEmail.getText().toString().isEmpty() && !Xpassword.getText().toString().isEmpty()) 
       { 
        Toast.makeText(Console_Activity.this, R.string.successful_login, Toast.LENGTH_SHORT).show(); 
        xShowDialog.setImageResource(R.drawable.xboxbuttongreen); 


     dialog.dismiss(); 


       } 
       else 
       { 
        Toast.makeText(Console_Activity.this, R.string.error_login_message, Toast.LENGTH_SHORT).show(); 
       } 
      } 
     }); 




     XNtnbtn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       //changes here 
       dialog.dismiss(); 
      } 
     }); 

     //changes here 
     dialog.show(); 

    }