使用Toast为什么报错java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/

【睿-阁】服装加工 2019-07-10 05:14:09
安卓开发使用Toast为什么会报错java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener; 但是在别的的地方使用有都没问题,唯独在我添加注释的if里使用报错。
这里使用了Bmob的save方法添加数据。而且报错日志显示的位置还不是在这个Toast这一行,而是在上一个activity的初始化布局的
setContentView方法的那一行。有哪位大神知道问题所在,麻烦帮帮忙,江湖救急啊

case R.id.faBu_anLiu:
ThreadPools.getInstance(FaBuActivity.this).execute(new Runnable() {
@Override
public void run() {
leiRong=miaoShu.getText().toString();
phoneNumber=number.getText().toString();
if(i==1){
System.out.println("36");
//Toast.makeText(FaBuActivity.this,"36",Toast.LENGTH_LONG).show();
}else {
Informatica informatica = new Informatica();
informatica.setLeiBie(leiBie);
informatica.setXuanXiang(xuanXiang);
informatica.setLieRong(leiRong);
informatica.setPhoneNumber(phoneNumber);
informatica.save(new SaveListener<String>() {
@Override
public void done(String s, BmobException e) {
if (e == null) {
Toast.makeText(FaBuActivity.this, "发布成功", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(FaBuActivity.this, "发布失败", Toast.LENGTH_LONG).show();
}
}
});
}
}
});
break;
...全文
2451 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 2 楼 usecf的回复:
把你toast加在这个中间试试 Looper.prepare(); Toast.makeText(FaBuActivity.this, "发布成功", Toast.LENGTH_LONG).show(); Looper.loop(); Looper.prepare(); Toast.makeText(FaBuActivity.this, "发布失败", Toast.LENGTH_LONG).show(); Looper.loop();
谢谢,确实是这个问题,加上Looper就可以了
  • 打赏
  • 举报
回复
引用 1 楼 风轻云淡v10的回复:
在子线程里面使用Toast需要自己创建一个 Looper 吧

new Thread(new Runnable() {
    @Override
    public void run() {
        Looper.prepare();
        Toast.makeText(TwoActivity.this, "子线程显示", Toast.LENGTH_SHORT).show();
        Looper.loop();
    }
}).start();
谢谢,确定是这个问题,加上looper就可以了
usecf 2019-07-10
  • 打赏
  • 举报
回复
把你toast加在这个中间试试 Looper.prepare(); Toast.makeText(FaBuActivity.this, "发布成功", Toast.LENGTH_LONG).show(); Looper.loop(); Looper.prepare(); Toast.makeText(FaBuActivity.this, "发布失败", Toast.LENGTH_LONG).show(); Looper.loop();
头发还没秃a 2019-07-10
  • 打赏
  • 举报
回复
在子线程里面使用Toast需要自己创建一个 Looper 吧

new Thread(new Runnable() {
    @Override
    public void run() {
        Looper.prepare();
        Toast.makeText(TwoActivity.this, "子线程显示", Toast.LENGTH_SHORT).show();
        Looper.loop();
    }
}).start();

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧