これは正常に機能していますが、編集テキストが空であるかどうかを確認するには、onPreExecute()
をチェックします。この行close();
が間違っています。サーバーに接続する前に、テキストを編集する必要はありません。私は空のエディットテキストが、それはdoInBackgroundでアクセスされることはありませんfinal AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(LoginActivity.this);
を埋めるためにユーザーに伝えるためにonPreExecute()
に警告ダイアログを追加したいonpreexecuteでnullをチェックしている間にasyncataskを停止する方法
私の他の問題は、画像は、そのが使用されていないことを示すがalertdialogbuilder
はdoinbackground
どのように存在しています彼らもそこにアクセスできるようにするには?
class SendPostReqAsyncTask extends AsyncTask<String, Void, String> {
@Override
protected void onPreExecute()
{
name = usernam.getText().toString();
pass = passw.getText().toString();
//emails = email.getText().toString();
if (name = null || pass =null)
close(); // i guess this is wrong i want to stop the asynctask
Log.e("GetText","called");
}
@Override
protected String doInBackground(String... params) {
//doing connections to the server
}else{
final AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(LoginActivity.this);
alertDialogBuilder.setMessage("Wrong username or password, Try again please.");
alertDialogBuilder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// Toast.makeText(MainActivity.this,"You clicked yes button",Toast.LENGTH_LONG).show();
Intent i = new Intent(LoginActivity.this, LoginActivity.class);
startActivity(i);
}
});
なぜあなたは単に' EditText'sをチェックしませんか?また、 'getText()。toString()'は 'null'を返しません。あなたはそれが空であることをチェックしたいと思う。 –
onPreExecuteにフラグを設定し、doInBackgroundでこのフラグをチェックします。flatがfalseに設定されている場合は、doInBackgroundからnullを返します。 '@Override保護ボイドonPreExecute(){ progressDialog.show()。 } @Override保護ボイドonCancelled(){ ランニング= FALSE; } @OverrideボイドdoInBackground(ボイド...のparams){ 一方(ランニング){// ハードワーク し}戻りヌルを保護。 } ' – Rafal
@MikeM。いくつかの例では、 'onPreExecute()'を使ってEditsテキストを定義しています。空であるかどうかをチェックする方法は? – Moudiz