我通过添加"#FFFFFF"更改了应用的背景颜色。到我的styles.xml文件。问题是,我的应用程序中Toasts的背景颜色也发生了变化。
有没有办法改回来或防止覆盖Toast的背景颜色?
干杯!
styles.xml:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:background">#FFFFFF</item>
<!-- Customize your theme here. -->
</style>
</resources>
答案 0 :(得分:0)
用于toast的样式属性是toastFrameBackground但是你不能使用它,因为它还没有被导出,这意味着它不是public.xml的一部分,这意味着这个属性不适用于非平台/第三方应用。改变背景吐司颜色app野蛮听起来很复杂。
但是,您可以设置所需的背景:
Toast toast = Toast.makeText(context, stringResId, Toast.LENGTH_LONG);
View view = toast.getView();
view.setBackgroundResource(R.drawable.my_background);
或者你可以制作自己的Toast
Toast toast = new Toast(context);
toast.setDuration(Toast.LENGTH_SHORT);
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.my_toast_layout, null);
toast.setView(view);
希望它有所帮助!