我正在尝试在BroadcastReceiver类型类的onReceive函数内调用Toast.makeText函数时收到错误消息。 这不是another Question的重复,因为我正在调用show()方法,这是编译时问题 错误是:无法解析方法makeText。
如果我在任何其他活动类型类中调用它,同样的函数工作正常。
这是我试图运行的代码。
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();
}
}
答案 0 :(得分:2)
将上下文从BroadcastReceiver类传递给Toast。更改您的toast onReceive方法,如下所示
Toast.makeText(context, "test", Toast.LENGTH_SHORT).show();
答案 1 :(得分:1)
我猜它在使用#!D:/Programming/Software/python3.4.4/python
import cgi, cgitb, imp, mysql.connector
host ="localhost"
db = "webair"
user = "root"
password = ""
def getConnection():
conn = mysql.connector.connect(user=user,password=password,host=host,database=db)
if conn.is_connected():
print("aaaqqqq")
return conn
时遇到了麻烦。将其更改为:
context
答案 2 :(得分:1)
更改此
Toast.makeText(this,"test", Toast.LENGTH_SHORT).show();
到这个
Toast.makeText(context,"test", Toast.LENGTH_SHORT).show();
并尝试