getActivity / Toaster

Android 吐司框架,专治 Toast 各种疑难杂症
Apache License 2.0
3.2k stars 404 forks source link

[建议]:在使用CustomToastStyle的时候支持传入context #140

Closed AnkioTomas closed 3 weeks ago

AnkioTomas commented 3 weeks ago

你觉得框架有什么不足之处?【必答】

最近在使用自定义UI的时候遇到一个问题,如下所示:

java.lang.UnsupportedOperationException: Failed to resolve attribute at index 13: TypedValue{t=0x2/d=0x65040121 a=-1}, theme={InheritanceMap=[id=0x103013fandroid:style/Theme.DeviceDefault.Light.DarkActionBar, id=0x1030238android:style/Theme.Material.Light.DarkActionBar, id=0x1030237android:style/Theme.Material.Light, id=0x103000candroid:style/Theme.Light, id=0x1030005android:style/Theme], Themes=[android:style/Theme.DeviceDefault.Light.DarkActionBar, forced]}

由于Application只有默认主题,在使用Application来创建视图时,会找不到某些所需的资源。

issue 是否有人曾提过类似的建议?【必答】

框架文档是否提及了该问题【必答】

是否已经查阅框架文档但还未能解决的【必答】

你觉得该怎么去完善会比较好?【非必答】

  1. 支持使用ContextThemeWrapper初始化
  2. 或者在使用CustomToastStyle的时候支持传入context
getActivity commented 3 weeks ago

@AnkioTomas Context 这个参数是用 Activity 还是 Application 对象,是框架内部决定的,不会开放给外层定义,如果这个做法不满足你的需求,可以自定义 IToastStrategy 策略,在 createToast 方法修改创建 Toast 对象所用的 Context 对象。