Toast控件的用途:
1.弹出提示消息
2.可设置弹出时间长度
一、默认纯文本提示
if (txtUserName.getText().toString().equals(DbUser)){ if(txtPassword.getText().toString().equals(DbPassword)){ //txtResult.setText("登录成功"); Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_SHORT).show(); }else{ //密码错误 //txtResult.setText("密码错误"); Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_SHORT).show(); } } else{ //用户名不存在 //txtResult.setText("用户名不存在"); Toast.makeText(MainActivity.this, "用户名不存在", Toast.LENGTH_SHORT).show(); }
二、自定义默认提示位置
if (txtUserName.getText().toString().equals(DbUser)){ if(txtPassword.getText().toString().equals(DbPassword)){ //txtResult.setText("登录成功"); Toast toast = Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER,0,0); toast.show(); }else{ //密码错误 //txtResult.setText("密码错误"); Toast toast = Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER,0,0); toast.show(); } } else{ //用户名不存在 //txtResult.setText("用户名不存在"); Toast toast = Toast.makeText(MainActivity.this, "用户名不存在", Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER,0,0); toast.show(); }
三、自定义带图片信息提示
package com.example.logon; import androidx.appcompat.app.AppCompatActivity; import android.content.Context; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btnLogon = (Button)findViewById(R.id.btnLogon); btnLogon.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { RadioButton rbtnLogonByUserName = (RadioButton)findViewById(R.id.rbtnLogonByUserName); //RadioButton rbtnLogonByEmail = (RadioButton)findViewById(R.id.rbtnLogonByEmail); String DbUser,DbPassword; if(rbtnLogonByUserName.isChecked()){ DbUser = "zhangsan"; DbPassword = "123456"; } else{ DbUser = "zhangsan@sample.com"; DbPassword = "123456"; } EditText txtUserName = (EditText)findViewById(R.id.txtUserName); EditText txtPassword = (EditText)findViewById(R.id.txtPasword); TextView txtResult = (TextView)findViewById(R.id.txtResult); if (txtUserName.getText().toString().equals(DbUser)){ if(txtPassword.getText().toString().equals(DbPassword)){ //txtResult.setText("登录成功"); //Toast toast = Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //LinearLayout layout = (LinearLayout)toast.getView(); //ImageView img = new ImageView(getApplicationContext()); //img.setImageResource(R.drawable.googleplay); //layout.addView(img,0); //toast.show(); ToastShow("登录成功"); }else{ //密码错误 //txtResult.setText("密码错误"); //Toast toast = Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //toast.show(); ToastShow("密码错误"); } } else{ //用户名不存在 //txtResult.setText("用户名不存在"); //Toast toast = Toast.makeText(MainActivity.this, "用户名不存在", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //toast.show(); ToastShow("用户名不存在"); } } }); } void ToastShow(String Content){ Toast toast = Toast.makeText(MainActivity.this, Content, Toast.LENGTH_LONG); toast.setGravity(Gravity.CENTER,0,0); LinearLayout layout = (LinearLayout)toast.getView(); ImageView img = new ImageView(getApplicationContext()); img.setImageResource(R.drawable.googleplay); layout.addView(img,0); toast.show(); } }
四、自定义布局的信息提示
在Layout中新建一个xml文件,布局为:
package com.example.logon; import androidx.appcompat.app.AppCompatActivity; import android.content.Context; import android.os.Bundle; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btnLogon = (Button)findViewById(R.id.btnLogon); btnLogon.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { RadioButton rbtnLogonByUserName = (RadioButton)findViewById(R.id.rbtnLogonByUserName); //RadioButton rbtnLogonByEmail = (RadioButton)findViewById(R.id.rbtnLogonByEmail); String DbUser,DbPassword; if(rbtnLogonByUserName.isChecked()){ DbUser = "zhangsan"; DbPassword = "123456"; } else{ DbUser = "zhangsan@sample.com"; DbPassword = "123456"; } EditText txtUserName = (EditText)findViewById(R.id.txtUserName); EditText txtPassword = (EditText)findViewById(R.id.txtPasword); TextView txtResult = (TextView)findViewById(R.id.txtResult); if (txtUserName.getText().toString().equals(DbUser)){ if(txtPassword.getText().toString().equals(DbPassword)){ //txtResult.setText("登录成功"); //Toast toast = Toast.makeText(MainActivity.this, "登录成功", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //LinearLayout layout = (LinearLayout)toast.getView(); //ImageView img = new ImageView(getApplicationContext()); //img.setImageResource(R.drawable.googleplay); //layout.addView(img,0); //toast.show(); ToastShow("登录成功"); }else{ //密码错误 //txtResult.setText("密码错误"); //Toast toast = Toast.makeText(MainActivity.this, "密码错误", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //toast.show(); ToastShow("密码错误"); } } else{ //用户名不存在 //txtResult.setText("用户名不存在"); //Toast toast = Toast.makeText(MainActivity.this, "用户名不存在", Toast.LENGTH_LONG); //toast.setGravity(Gravity.CENTER,0,0); //toast.show(); ToastShow("用户名不存在"); } } }); } void ToastShow(String Content){ Toast toast = Toast.makeText(MainActivity.this, Content, Toast.LENGTH_LONG); View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.tosat_templates, null); TextView txtToastContent = (TextView) view.findViewById(R.id.txtToastContent); txtToastContent.setText(Content); toast.setView(view); toast.setGravity(Gravity.CENTER,0,0); toast.show(); } }