相关疑难解决方法(0)

getContext(),getApplicationContext(),getBaseContext()和"this"之间的区别

是什么区别getContext(),getApplicationContext(),getBaseContext(),和" this"?

虽然这是一个简单的问题,但我无法理解它们之间的基本区别.如果可能,请举出一些简单的例子.

android this android-context

535
推荐指数
5
解决办法
27万
查看次数

吐司未显示在Android Q中

ToastAndroid Q中不起作用。有什么变化Toast吗?我找不到的发行说明Toast
我的代码很简单。

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    Toast.makeText(this, "onCreate", Toast.LENGTH_SHORT).show()
}

fun onButtonClick(view: View) {
    Toast.makeText(this, "onButtonClick", Toast.LENGTH_SHORT).show()
}
Run Code Online (Sandbox Code Playgroud)

这正常工作与Android的馅饼,但与Android Q.没有运气
发生了什么事Toast

android toast android-10.0

7
推荐指数
1
解决办法
484
查看次数

Toast.makeText 未在 Android 11 中显示(使用 SDK 30 模拟器)

根据https://developer.android.com/about/versions/11/behavior-changes-11#toasts,Toasts 应该仍然可以正常用于 Android11(仅 setView() 已弃用)。

请注意,仍然允许文本吐司;这些是使用不调用 setView() 的 Toast.makeText() 创建的吐司。

但是,我无法为运行 SDK30 的模拟器显示 Toast

    compileSdkVersion 30
    buildToolsVersion "30.0.3" 
    and with targetSdkVersion 30 
    
Run Code Online (Sandbox Code Playgroud)

使用的代码只是一个简单的

    Toast.makeText(getApplicationContext(), "HELLO WORLD", Toast.LENGTH_SHORT).show();
Run Code Online (Sandbox Code Playgroud)

当我将 targetSdk 更改为 29(或设备 <SDK30)时,会显示吐司。

我是否需要在清单文件中为 Toast 添加任何 <queries> 标签? https://developer.android.com/about/versions/11/privacy/package-visibility

我也试过以下没有运气。

  1. 重新启动模拟器Toast 未在 Android Q 中显示
  2. 通知 ON Toast 消息未显示

android android-toast

7
推荐指数
1
解决办法
1443
查看次数