sho*_*per 11 java android android-toast
我设置了吐司的重力,使其显示在屏幕顶部,代码如下\xef\xbc\x9a
\nToast toast = Toast.makeText(getActivity(), "\xe9\x82\xae\xe7\xae\xb1\xe5\x9c\xb0\xe5\x9d\x80\xe4\xb8\x8d\xe8\x83\xbd\xe4\xb8\xba\xe7\xa9\xba\xef\xbc\x81", Toast.LENGTH_SHORT);\ntoast.setGravity(Gravity.TOP, 0, 0);\ntoast.show();\nRun Code Online (Sandbox Code Playgroud)\n它在带有 LogCat 消息的 AVD Nexus 6 API 30 中不起作用:
\nE/Toast: setGravity() shouldn't be called on text toasts, the values won't be used\nRun Code Online (Sandbox Code Playgroud)\n但是,当我在 Android 9 的诺基亚 X6 手机上安装该 apk 时,似乎没问题。\n请帮助我!
\nBVa*_*tur 12
正如 Android 文档中有关 Toast setGravity方法所述,此方法对于运行API30或更高版本的设备不再适用。我想您的项目的targetSdk设置为 30。
警告:从 Android Build.VERSION_CODES#R 开始,对于面向 API 级别 Build.VERSION_CODES#R 或更高版本的应用程序,在文本 toast 上调用此方法时,此方法是无操作的。
来源:https://developer.android.com/reference/android/widget/Toast#setGravity(int,%20int,%20int)
小智 7
文本 Toast 无法再自定义。您需要创建一个简单的 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();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9696 次 |
| 最近记录: |