Toast.setGravity() 在我的 AVD Nexus 6 中不起作用 API 30
Toast.setGravity() does not work in my AVD Nexus 6 API 30
我设置toast的重力使其显示在屏幕上方,代码如下:
Toast toast = Toast.makeText(getActivity(), "邮箱地址不能为空!", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.TOP, 0, 0);
toast.show();
它在我的 AVD Nexus 6 API 30 和 LogCat 消息中不起作用:
E/Toast: setGravity() shouldn't be called on text toasts, the values won't be used
但是当我在 phone 带有 Android 9 的诺基亚 X6 上安装 apk 时似乎没问题。
请帮助我!!
正如 Android 关于 Toast setGravity 方法的文档中所述,此方法不再适用于设备 运行 API30 或更高。我想你的项目 targetSdk 设置为 30。
Warning: Starting from Android Build.VERSION_CODES#R, for apps targeting API level Build.VERSION_CODES#R or higher, this method is a no-op when called on text toasts.
来源:https://developer.android.com/reference/android/widget/Toast#setGravity(int,%20int,%20int)
如果您仍想在 Android 11 及更高版本上设置 Toasts 的重力,请参阅 this article。
无法再自定义文本 Toasts。您需要创建一个简单的 Toast 才能进行自定义。您还需要将消息文本添加到单独的视图文件中。
Toast toast = new Toast(getContext());
View toast_view = LayoutInflater.from(getContext()).inflate(R.layout.toast_text, null);
toast.setView(toast_view);
toast.setDuration(Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
我设置toast的重力使其显示在屏幕上方,代码如下:
Toast toast = Toast.makeText(getActivity(), "邮箱地址不能为空!", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.TOP, 0, 0);
toast.show();
它在我的 AVD Nexus 6 API 30 和 LogCat 消息中不起作用:
E/Toast: setGravity() shouldn't be called on text toasts, the values won't be used
但是当我在 phone 带有 Android 9 的诺基亚 X6 上安装 apk 时似乎没问题。 请帮助我!!
正如 Android 关于 Toast setGravity 方法的文档中所述,此方法不再适用于设备 运行 API30 或更高。我想你的项目 targetSdk 设置为 30。
Warning: Starting from Android Build.VERSION_CODES#R, for apps targeting API level Build.VERSION_CODES#R or higher, this method is a no-op when called on text toasts.
来源:https://developer.android.com/reference/android/widget/Toast#setGravity(int,%20int,%20int)
如果您仍想在 Android 11 及更高版本上设置 Toasts 的重力,请参阅 this article。
无法再自定义文本 Toasts。您需要创建一个简单的 Toast 才能进行自定义。您还需要将消息文本添加到单独的视图文件中。
Toast toast = new Toast(getContext());
View toast_view = LayoutInflater.from(getContext()).inflate(R.layout.toast_text, null);
toast.setView(toast_view);
toast.setDuration(Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();