zl程序教程

您现在的位置是:首页 >  Java

当前栏目

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

2023-02-18 16:34:09 时间

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里面去。

new LoadAsyncTak().execute(mWebUrl);

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;
    }
    
}

5.java.lang.reflect.InvocationTargetException
xml中引用的自定义的view出错导致的

6.java.lang.IllegalStateException

i) Immutable bitmap passed to Canvas constructor  

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.就像下面的代码。就会报空指针。

canvas.drawCircle(getWidth() / 2, getHeight() / 2, mRadius, null);
改正方法只需new一个paint对象传进去就好了