有没有办法通过共享首选项中的复选框全局打开和关闭 toast 通知?
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
boolean showToast = myPrefs.getBoolean("showToast",
true);
我在想也许可以上一个类:
boolean showToast(){
//code
}
但我想,SO 可能有一个全局解决方案?
我应该使用不同类型的通知系统吗?
有什么想法吗?
最佳答案
您可以考虑扩展 Toast 以创建您的自定义类,该类足够智能,可以在显示 toast 之前读取用户偏好。
然后重构您的代码以用 SmartToast 替换 Toast。
SmartToast.makeText(this, "message", Toast.LENGTH_SHORT).show();
因此实现 SmartToast.makeText() 以返回 SmartToast 的实例并覆盖 show() 如下:
@Override
public void show() {
if (PreferenceManager.getDefaultSharedPreferences(context).getBoolean("showToast", true)) {
super.show();
}
}
关于android - 从共享首选项打开/关闭 Toast?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15188025/