前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >异常的出现情况及解决方式(持续更新中)

异常的出现情况及解决方式(持续更新中)

作者头像
103style
发布2022-12-19 12:46:44
4490
发布2022-12-19 12:46:44
举报

tips:快速查阅 ctrl + F 输入关键字(异常名字)查找。

1.Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class fragment

2.Caused by: java.lang.RuntimeException: Binary XML file line #46: You must supply a layout_width attribute.

看原因可知  这里是文件有问题,找到对应的行数就可以了。

3.FATAL EXCEPTION: main Process: com.belongsoft.cloudhelpstudent, PID: 19126 

android.content.res.Resources$NotFoundException: String resource ID #0xc9 at android.content.res.Resources.getText(Resources.java:244) 

at android.widget.TextView.setText(TextView.java:3888) 

at com.belongsoft.cloudhelpstudent.adapter.VoteListAdapter.getView(VoteListAdapter.java:94)

这里的错误是因为 在VoteListAdapter的94行 settext里面 设置是的 int 类型的值

4.android.os.NetworkOnMainThreadException

造成这样的错误原因是代码不符合Android规范,如果把上面访问方式改为异步操作就不会出现在4.0上访问出现 android.os.NetworkOnMainThreadException异常.

如:把网络请求放到AsyncTask里面去。

代码语言:javascript
复制
new LoadAsyncTak().execute(mWebUrl);

代码语言:javascript
复制
class LoadAsyncTak extends AsyncTask<String, Void, Void> {

    @Override
    protected Void doInBackground(String... params) {
        mDatas = GetDataFromWebUtils.getDatasFromWeb(params[0]);
        Log.e("mDatas.size()====", String.valueOf(mDatas.size()));
        return null;
    }
    
}

代码语言:javascript
复制
5.java.lang.reflect.InvocationTargetException
代码语言:javascript
复制
xml中引用的自定义的view出错导致的

代码语言:javascript
复制
6.java.lang.IllegalStateException

i) Immutable bitmap passed to Canvas constructor  

代码语言:javascript
复制
mBgBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.test);
mCanvas = new Canvas(mBgBitmap);

这种情况报这异常 是因为传了一个不变的bitmap给了canvas的构造函数。

7. android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

i) 在MyApplication.java里面添加了弹框操作。 

8. java.lang.NullPointerException

1).自定义view的时候在ondraw方法中最后一次参数穿了null.就像下面的代码。就会报空指针。

代码语言:javascript
复制
canvas.drawCircle(getWidth() / 2, getHeight() / 2, mRadius, null);
代码语言:javascript
复制
改正方法只需new一个paint对象传进去就好了
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档