消息模式Toast.makeText用法

原文地址:消息模式Toast.makeText用法 作者:LuChao

Toast用于向用户显示一些帮助/提示。下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast。
1.默认效果

[转载]消息模式Toast.makeText用法

代码

Toast.makeText(getApplicationContext(), "默认Toast样式",
     Toast.LENGTH_SHORT).show();

2.自定义显示位置效果

[转载]消息模式Toast.makeText用法

代码

toast = Toast.makeText(getApplicationContext(),
     "自定义位置Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   toast.show();

3.带图片效果

[转载]消息模式Toast.makeText用法

代码

toast = Toast.makeText(getApplicationContext(),
     "带图片的Toast", Toast.LENGTH_LONG);
   toast.setGravity(Gravity.CENTER, 0, 0);
   LinearLayout toastView = (LinearLayout) toast.getView();
   ImageView imageCodeProject = new ImageView(getApplicationContext());
   imageCodeProject.setImageResource(R.drawable.icon);
   toastView.addView(imageCodeProject, 0);
   toast.show();

4.完全自定义效果

[转载]消息模式Toast.makeText用法

代码

LayoutInflater inflater = getLayoutInflater();
   View layout = inflater.inflate(R.layout.custom,
     (ViewGroup) findViewById(R.id.llToast));
   ImageView image = (ImageView) layout
     .findViewById(R.id.tvImageToast);
   image.setImageResource(R.drawable.icon);
   TextView title = (TextView) layout.findViewById(R.id.tvTitleToast);
   title.setText("Attention");
   TextView text = (TextView) layout.findViewById(R.id.tvTextToast);
   text.setText("完全自定义Toast");
   toast = new Toast(getApplicationContext());
   toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
   toast.setDuration(Toast.LENGTH_LONG);
   toast.setView(layout);
   toast.show();

5.其他线程

[转载]消息模式Toast.makeText用法

 代码

new Thread(new Runnable() {
    public void run() {
     showToast();
    }
   }).start();

package com.example.myexamproject; 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 androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import com.example.myexamproject.db.UserDbHelper; import com.example.myexamproject.entity.UserInfo; import com.example.myexamproject.utils.MD5Utils; public class UpdatePasswordActivity extends AppCompatActivity { private EditText NewPassword; private EditText SecondPassword; private Button update_password; private String md5_password; String new_password; String second_password; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_update_password); init(); } private void init(){ UserInfo userInfo = UserInfo.getsUserInfo(); NewPassword = findViewById(R.id.new_password); SecondPassword = findViewById(R.id.second_password); update_password = findViewById(R.id.update_password); update_password.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { new_password = NewPassword.getText().toString().trim(); second_password = SecondPassword.getText().toString().trim(); if (TextUtils.isEmpty(new_password)){ Toast.makeText(UpdatePasswordActivity.this,"请输入新的密码",Toast.LENGTH_SHORT).show(); }else if (TextUtils.isEmpty(second_password)){ Toast.makeText(UpdatePasswordActivity.this,"请再次输入密码",Toast.LENGTH_SHORT).show(); }else if (TextUtils.equals(new_password,second_password)){ md5_password = MD5Utils.md5(new_password); if(TextUtils.equals(md5_password,userInfo.getPassword())){ Toast.makeText(UpdatePasswordActivity.this,"新密码需与旧密码不一致",Toast.LENGTH_SHORT).show(); }else { int row = UserDbHelper.getInstance(UpdatePasswordActivity.this).updatePassword(userInfo.getUser_id(), md5_password); UserInfo.sUserInfo.setPassword(md5_password); if(row==1){ Toast.makeText(UpdatePasswordActivity.this,"修改成功",Toast.LENGTH_SHORT).show(); finish(); } } }else { Toast.makeText(UpdatePasswordActivity.this,"两次输入密码不一致",Toast.LENGTH_SHORT).show(); } } }); } }
03-19
package com.example.myapp; import android.app.Activity; import android.app.AlertDialog; import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MyActivity extends Activity { private Button button0; private Button button1; private Button button2; private EditText editText1; @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); // 更新当前intent } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_activity); button0 = findViewById(R.id.button0); button1 = findViewById(R.id.button1); button2 = findViewById(R.id.button2); editText1=findViewById(R.id.edt1); AlertDialog.Builder builder = new AlertDialog.Builder(this); button0.setOnClickListener(view -> { new AlertDialog.Builder(MyActivity.this) .setTitle("《静夜思》李白") .setMessage("床前明月光,疑是地上霜。\n举头望明月,低头思故乡。") .setPositiveButton("赏析", (dialog, which) -> { Toast.makeText(MyActivity.this, "此诗描写秋夜思乡之情", Toast.LENGTH_SHORT).show(); }) .setNegativeButton("关闭", null) .show(); }); button1.setOnClickListener(view -> { String input = editText1.getText().toString().trim(); if (input.isEmpty()) { Toast.makeText(this, "请输入内容", Toast.LENGTH_SHORT).show(); return; } new AlertDialog.Builder(this) .setTitle("系统提示") .setMessage(input) .setPositiveButton("确认", (d, w) -> { Toast.makeText(this, "提交成功", Toast.LENGTH_LONG).show(); }) .show(); //Toast.makeText(MyActivity.this, input, Toast.LENGTH_LONG).show(); //Toast.makeText(MyActivity.this , "按钮1被点击" , Toast.LENGTH_LONG).show(); }); button2.setOnClickListener(view -> { startActivity(new Intent(MyActivity.this, SecondActivity.class)); }); } } 这样写好不好
03-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值