自定义Toast 仿ios 风格

老婆保佑,代码无BUG

12.gif

import android.content.Context;
import android.view.Gravity;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

import com.starot.spark.R;

import butterknife.BindView;
import butterknife.ButterKnife;

/**
 * 描述:
 * <p>
 * 自定义toast
 *
 * @author allens
 * @date 2018/3/26
 */

public class ToastUtil {

    private static ViewHolder viewHolder;

    public static void show(Context context, String msg) {
        Toast toast = new Toast(context);
        View layout = View.inflate(context, R.layout.toast, null);
        viewHolder = new ViewHolder(layout);
        layout.setAlpha(0.7f);
        toast.setView(layout);
        viewHolder.toastTv.setText("  " + msg + "  ");
        toast.setGravity(Gravity.FILL_HORIZONTAL, 0, 0);
        toast.show();
    }

    public static void show(Context context, int msgRes) {
        Toast toast = new Toast(context);
        View layout = View.inflate(context, R.layout.toast, null);
        viewHolder = new ViewHolder(layout);
        layout.setAlpha(0.7f);
        toast.setView(layout);
        viewHolder.toastTv.setText("  " + context.getResources().getString(msgRes) + "  ");
        toast.setGravity(Gravity.FILL_HORIZONTAL, 0, 0);
        toast.show();
    }

    static class ViewHolder {
        @BindView(R.id.toast_tv)
        TextView toastTv;

        ViewHolder(View view) {
            ButterKnife.bind(this, view);
        }
    }
}

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <TextView
        android:id="@+id/toast_tv"
        android:layout_width="wrap_content"
        android:layout_height="60dp"
        android:paddingLeft="20dp"
        android:paddingRight="20dp"
        android:layout_gravity="center"
        android:background="@drawable/btn_bg_toast"
        android:gravity="center"
        android:text="asdf"
        android:textColor="@color/main_adapter_bg" />
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="4dp" />

    <stroke
        android:width="0.3dp"
        android:color="@color/toast_bg" />
    <solid android:color="@color/toast_bg" />
    <corners
        android:bottomLeftRadius="10dp"
        android:bottomRightRadius="10dp"
        android:topLeftRadius="10dp"
        android:topRightRadius="10dp" />

</shape>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在安卓应用中Toast的使用频率是非常高的,关于Toast的基本使用这里就不再啰嗦,这里只说一下怎么去更改Toas...
    CnPeng阅读 6,804评论 -1 20
  • 近日项目需求,需要做自定义键盘,因为项目对安全性能要求较高,所以摒弃了系统键盘和一系列的第三方键盘,仿照工商银行a...
    过眼_云烟_5100阅读 2,561评论 1 1
  • 2.14,太白楼路,17时起,车流人流逐渐加大,天马岗、中区岗、华联、通信大厦路口等路口交通紧张。太白中队在支队党...
    20e154e80efd阅读 750评论 13 0
  • 李小璐的出轨门,炸裂了2017年的句号。 事件过程细枝末节捕风捉影相信大家都看到腻了。 说好的周三见也并没有爆出更...
    韦佳wlc阅读 1,054评论 0 0
  • 当夜色降临 我站在台阶上倾听 星星蜂拥在花丛里 而我站在黑暗中 听,一颗星星落地作响 你别赤脚在这草地上散步 我的...
    小虹口袋里有糖阅读 124评论 0 0