为什么FragmentStatePagerAdapter会以静默方式捕获异常?

时间:2015-06-25 03:56:36

标签: android android-fragments android-viewpager fragmentstatepageradapter

我发现FragmentStatePagerAdapter(或其他东西,可能是ViewPager,我不知道)会以静默方式捕获异常并导致ANR。

例如:

import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;

public static class MyPagerAdapter extends FragmentStatePagerAdapter {
    private List<String> data;

    public TabPagerAdapter(FragmentManager fm, List<String> data) {
        super(fm);
        int a = 1 / 0; // ANR instead of crash
        this.data = data;
    }

    @Override
    public Fragment getItem(int pos) {
        int a = 1 / 0; // ANR instead of crash
        return MyFragment.newInstance(data.get(pos));
    }

    @Override
    public int getCount() {
        int a = 1 / 0; // ANR instead of crash
        return data.size();
    }

    @Override
    public CharSequence getPageTitle(int position) {
        int a = 1 / 0; // ANR instead of crash
        return data.get(position);
    }
}

我在logcat中找到的只有:

D/AndroidRuntime(14277): Shutting down VM
W/dalvikvm(14277): threadid=1: thread exiting with uncaught exception (group=0x41a2d9a8)

我应该怎么做才能启用logcat(用于调试)? 我目前的解决方法是为FragmentStatePagerAdapter中的每个方法添加try-catch。

0 个答案:

没有答案