Git Product home page Git Product logo

toaster's Introduction

我是一名热爱 Android 技术的程序员,平时爱造轮子,人送外号轮子哥

我的理想是让这个世界没有难开发的安卓项目,消灭一切难维护的代码。

toaster's People

Contributors

880634 avatar getactivity avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

toaster's Issues

关于ToastHelper的cancel方法问题

cancel方法里面是根据windowManager是否为空去判断移除的,那如果我在actB里面弹出toast,然后返回到actA,那么windowManager就是null了吧,也就没有移除了。实测vivo X21A有这个问题

Android 9.0 华为机型

关掉通知栏权限后友盟报错

java.lang.IllegalStateException: View android.widget.TextView{93b6bee V.ED..... ......ID 0,0-0,0 #102000b android:id/message} has already been added to the window manager.
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:371)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:131)
at android.widget.Toast$TN.handleShow(Toast.java:501)
at android.widget.Toast$TN$1.handleMessage(Toast.java:403)
at android.os.Handler.dispatchMessage(Handler.java:112)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)

能重现 不会崩溃但是吐司不提示 望fix 多谢!

多语言适配的Bug

在Dialog中,直接使用ToastUtils.show(R.string.can_not_empty)会出现无法适配多语言的情况,英文环境下仍然弹出的是中文(values资源文件已配好)。通过ToastUtils.show(mActivity.getString(R.string.can_not_empty))这种使用,则可以正常适配多语言。

《急需要改的一点》

现在Github里面所用的Toast都可以实现连续快速点击都会弹出Toast 为什么这个框架不行 连续点击确没有反应显示 ,测试直接给你bug了,作者是否可以优化一下,不管我点击多少次 速度多快,都可以显示出来 不延时 快速那种 ?QQ478104175

demo有个问题

多次点击某个按钮 弹出的toast被保存在一个队列中 然后在点击别的按钮 ,会发现弹出toast的文字内容改变了,但是样式什么的都还是上一个点击的。

红米6pro

弹窗只出现一次 第二次点击不弹toast。 应该是快速点击的时候 toast不消失 只是文字改变一下这个逻辑吧

crash:has already been added to the window manager

java.lang.IllegalStateException: View android.widget.TextView{3728ddd V.ED..... ......ID 0,0-594,133 #102000b android:id/message} has already been added to the window manager.

I use genymotion :google pixel 3,
It happens when I quick click the view which need toast

切换回上一个页面Toast闪现

你好,使用中发现关闭通知权限后显示Toast,切换回上一个Activity后Toast会闪现一下然后消失,demo也是这样,一加3T 系统版本7.1.1有该问题

禁用通知栏权限后需要重启应用、重启应用、重启应用才能后生效

打开APP之前允许通知栏,可以弹吐司,在设置里面 关闭通知权限,然后切换到APP,吐司弹不出来,必须要把进程杀掉才可以,集成的最新版本5.2依旧有bug,魅族手机MX5,系统5.1,不知道怎么测试的就断定已解决?你的dmeo可以,因为你添加了onRestart,但是如果用户集成呢?这个可以没有自己集成测试吧?

提 issue 需知

Github沟通效率实在是很低下,大家伙有问题或者Bug直接到Q群78797078私信给我反馈就OK,我会尽快答复你的问题

双击退出,发生WindowManager: android.view.WindowLeaked:

private long duration;
private final int SPACE_TIME = 3000;
@OverRide
public void onBackPressed() {
long now = System.currentTimeMillis();
if (now - duration > SPACE_TIME) {
duration = now;
ToastUtils.show("再按一次返回键关闭程序!");
return;
}
super.onBackPressed();
}
这么调用后发生了WindowManager: android.view.WindowLeaked:

请问关于Android7.x系统Toast显示异常BadTokenException最新版本8.0有处理吗?5.2版本依然有这个错误

#24302 java.lang.IllegalStateException
View android.widget.TextView{e64f546 V.ED..... ......ID 0,0-0,0 #102000b android:id/message} has already been added to the window manager.
com.hjq.toast.SafeToast$SafeHandler.dispatchMessage(SafeToast.java:64)

出错堆栈:
1 android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:316)
2 android.view.WindowManagerImpl.addView(WindowManagerImpl.java:94)
3 android.widget.Toast$TN.handleShow(Toast.java:469)
4 android.widget.Toast$TN$2.handleMessage(Toast.java:346)
5 android.os.Handler.dispatchMessage(Handler.java:102)
6 com.hjq.toast.SafeToast$SafeHandler.dispatchMessage(SafeToast.java:64)
7 android.os.Looper.loop(Looper.java:163)
8 android.app.ActivityThread.main(ActivityThread.java:6238)
9 java.lang.reflect.Method.invoke(Native Method)
10 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:933)
11 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)

oppo a73 bug

小米6x上正常。
oppo a73上弹不出来,只有app在前台才可以看到,app切到后台了就不行了。
小米6x是android 8.1.0,miui10.2.2.0。
oppo是android 7.1.1,coloros v3.2。

XToast构造方法错误

image

image

代码是28的

另外 public static void show(Object object) 可否判断下object类型,比如最常用的int的string id都传不了。还得getString

关于toast显示的一个问题

这个库挺好的,目前来说问题最少的一个,但是有个地方让我很纠结,就是连续弹toast 会导致后面的不显示,一定要等前一个toast显示完了消失了过一会才会显示新的toast
能否开放成新的toast内容覆盖已经显示的toast内容 并且重置显示时间?比如说我for循环显示100次toast,只会弹一次,内容会从0更新到99 在更新到99以后才开始算显示时间

报一下错误

android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:7905)
at android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:1276)
at android.view.View.requestLayout(View.java:22139)
at android.widget.TextView.checkForRelayout(TextView.java:8754)
at android.widget.TextView.setText(TextView.java:5487)
at android.widget.TextView.setText(TextView.java:5343)
at android.widget.TextView.setText(TextView.java:5300)
at com.hjq.toast.BaseToast.setText(BaseToast.java:32)
at com.hjq.toast.ToastStrategy.handleMessage(ToastStrategy.java:86)
at android.os.Handler.dispatchMessage(Handler.java:108)

移除 context 依赖

BaseToastStyle 这个类中可以可以把 context 移除通过 Resource.getSystem 来获取相应的信息

java.lang.IllegalStateException

View android.widget.TextView{81a4017 V.ED..... ......ID 0,0-0,0 #102000b android:id/message} has already been added to the window manager.

android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:335)

线上还是报这异常,这是toast通病,不知道有解决办法没有

按钮快速点击吐司问题

例如一个按钮快速点击,每次点击统计次数,并弹出吐司,但是会有延迟显示,可不可以把之前的内容覆盖掉,立即显示最新的吐司内容。

11111

子线程创建looper没停,应该会有资源泄露吧

能否提供api设置显示时长

建议:
1,像setGravity()设置那样,如果设置了setDuration()则使用开发者的设置,否则使用自动时长
2,让开发者可以配置自动时长的最大字数(现在是写死的20字)

闪退

在手动关闭通知栏权限后,在onRestart()中初始化的时,调用ToastUtils.init(getApplication());recreate();会出现闪退的情况,百分之百复现

AActivity-->BActivity,点击按钮Button,跳转到CActivity,然后进行操作登录,返回到BActivity,再次点击BActivity中的Button,吐司不显示,因为在WindowHelper中记录的Activity不存在,返回在回到AActivity,同样不显示Toast内容

发现你新写的这个有问题,AActivity-->BActivity,点击按钮Button,跳转到CActivity,然后进行操作登录,返回到BActivity,再次点击BActivity中的Button,吐司不显示,因为在WindowHelper中记录的Activity不存在,返回在回到AActivity,同样不显示Toast内容

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.