为什么 Toast.maketoast 在 BroadcastReceiver class 中不起作用
Why Toast.maketoast is not working in the BroadcastReceiver class
我在尝试调用 BroadcastReceiver 类型 class 的 onReceive 函数中的 Toast.makeText 函数时收到错误消息。
这不是 another Question 的副本,因为我正在调用 show() 方法,这是编译时问题
错误是:无法解析方法 makeText。
如果我在任何其他 Activity 类型 Class.
中调用它,相同的函数工作正常
这是我正在尝试 运行 的代码。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class CallStateReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(this,"test", Toast.LENGTH_SHORT).show();
}
}
我猜 context
有问题。将其更改为:
Toast.makeText(context, "test", Toast.LENGTH_SHORT).show();
将 Context 从 BroadcastReceiver class 传递到 Toast.change 你的 toast onReceive 方法,如下所示
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context,"test", Toast.LENGTH_SHORT).show();
}
改变这个
Toast.makeText(this,"test", Toast.LENGTH_SHORT).show();
至此
Toast.makeText(context,"test", Toast.LENGTH_SHORT).show();
并尝试
我在尝试调用 BroadcastReceiver 类型 class 的 onReceive 函数中的 Toast.makeText 函数时收到错误消息。 这不是 another Question 的副本,因为我正在调用 show() 方法,这是编译时问题 错误是:无法解析方法 makeText。
如果我在任何其他 Activity 类型 Class.
中调用它,相同的函数工作正常这是我正在尝试 运行 的代码。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class CallStateReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(this,"test", Toast.LENGTH_SHORT).show();
}
}
我猜 context
有问题。将其更改为:
Toast.makeText(context, "test", Toast.LENGTH_SHORT).show();
将 Context 从 BroadcastReceiver class 传递到 Toast.change 你的 toast onReceive 方法,如下所示
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context,"test", Toast.LENGTH_SHORT).show();
}
改变这个
Toast.makeText(this,"test", Toast.LENGTH_SHORT).show();
至此
Toast.makeText(context,"test", Toast.LENGTH_SHORT).show();
并尝试