Ser*_*gio 2 java android handler android-activity
我有一个错误"无法从类型处理程序中对非静态方法sendEmptyMessage(int)进行静态引用"
怎么解决?我认为这是一个问题,我这样做的课程不是一项活动?
new Thread() {
public void run() {
try {
List<Sail> sails = searchSails();
selectSailIntent.putParcelableArrayListExtra(
Constant.SAILS, new ArrayList<Sail>(sails));
getContext().startActivity(selectSailIntent);
Handler.sendEmptyMessage(0);
} catch (Exception e) {
alertDialog.setMessage(e.getMessage());
Handler.sendEmptyMessage(1);
}
}
}.start();
}
};
Run Code Online (Sandbox Code Playgroud)
"无法从Handler类型中对非静态方法sendEmptyMessage(int)进行静态引用"
这是因为Handler引用了一个类,但sendEmptyMessage它不是静态方法(应该在对象上调用,而不是在类上调用).
怎么解决?
为了能够调用该sendEmptyMessage方法,您将要么
需要实例化 a Handler,即做类似的事情
Handler h = new Handler();
h.sendEmptyMessage(0);
Run Code Online (Sandbox Code Playgroud)
要么
将static修改器添加到sendEmptyMessage方法:
public static void sendEmptyMessage(int i) { ...
^^^^^^
Run Code Online (Sandbox Code Playgroud)