Android应用程序错误仅在旧的emulator上

Android应用程序错误仅在旧的emulator上,android,Android,我目前正在开发一个Android应用程序,虽然在Jelly Bean模拟器上一切都很好,但在2.2模拟器上我遇到了以下错误: 10-11 22:26:35.853: E/AndroidRuntime(303): FATAL EXCEPTION: main 10-11 22:26:35.853: E/AndroidRuntime(303): android.view.InflateException: Binary XML file line #1: Error inflating class &

我目前正在开发一个Android应用程序,虽然在Jelly Bean模拟器上一切都很好,但在2.2模拟器上我遇到了以下错误:

10-11 22:26:35.853: E/AndroidRuntime(303): FATAL EXCEPTION: main
10-11 22:26:35.853: E/AndroidRuntime(303): android.view.InflateException: Binary XML file line #1: Error inflating class <unknown>
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.LayoutInflater.createView(LayoutInflater.java:513)
10-11 22:26:35.853: E/AndroidRuntime(303):  at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:332)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ArrayAdapter.getView(ArrayAdapter.java:323)
10-11 22:26:35.853: E/AndroidRuntime(303):  at com.android.iagrams.util.MyAdapter.getView(MyAapter.java:20)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.AbsListView.obtainView(AbsListView.java:1315)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ListView.makeAndAddView(ListView.java:1727)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ListView.fillDown(ListView.java:652)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ListView.fillFromTop(ListView.java:709)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.ListView.layoutChildren(ListView.java:1580)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.AbsListView.onLayout(AbsListView.java:1147)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.layout(View.java:7035)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1249)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1125)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.onLayout(LinearLayout.java:1042)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.layout(View.java:7035)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.FrameLayout.onLayout(FrameLayout.java:333)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.layout(View.java:7035)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1249)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1125)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.onLayout(LinearLayout.java:1042)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.layout(View.java:7035)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.FrameLayout.onLayout(FrameLayout.java:333)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.layout(View.java:7035)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.ViewRoot.performTraversals(ViewRoot.java:1045)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1727)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.os.Handler.dispatchMessage(Handler.java:99)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.os.Looper.loop(Looper.java:123)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.app.ActivityThread.main(ActivityThread.java:4627)
10-11 22:26:35.853: E/AndroidRuntime(303):  at java.lang.reflect.Method.invokeNative(Native Method)
10-11 22:26:35.853: E/AndroidRuntime(303):  at java.lang.reflect.Method.invoke(Method.java:521)
10-11 22:26:35.853: E/AndroidRuntime(303):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-11 22:26:35.853: E/AndroidRuntime(303):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-11 22:26:35.853: E/AndroidRuntime(303):  at dalvik.system.NativeStart.main(Native Method)
10-11 22:26:35.853: E/AndroidRuntime(303): Caused by: java.lang.reflect.InvocationTargetException
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.widget.LinearLayout.<init>(LinearLayout.java:115)
10-11 22:26:35.853: E/AndroidRuntime(303):  at java.lang.reflect.Constructor.constructNative(Native Method)
10-11 22:26:35.853: E/AndroidRuntime(303):  at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.LayoutInflater.createView(LayoutInflater.java:500)
10-11 22:26:35.853: E/AndroidRuntime(303):  ... 36 more
10-11 22:26:35.853: E/AndroidRuntime(303): Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x2
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:463)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.<init>(View.java:2036)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.View.<init>(View.java:1834)
10-11 22:26:35.853: E/AndroidRuntime(303):  at android.view.ViewGroup.<init>(ViewGroup.java:285)
10-11 22:26:35.853: E/AndroidRuntime(303):  ... 40 more
10-11 22:26:35.853:E/AndroidRuntime(303):致命异常:main
10-11 22:26:35.853:E/AndroidRuntime(303):android.view.InflateException:二进制XML文件行#1:膨胀类时出错
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.LayoutInflater.createView(LayoutInflater.java:513)
10-11 22:26:35.853:E/AndroidRuntime(303):在com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.LayoutInflater.inflate(LayoutInflater.java:385)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:332)
10-11 22:26:35.853:E/AndroidRuntime(303):位于android.widget.ArrayAdapter.getView(ArrayAdapter.java:323)
10-11 22:26:35.853:E/AndroidRuntime(303):在com.android.iagrams.util.MyAdapter.getView(MyAapter.java:20)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.AbsListView.obtainView(AbsListView.java:1315)
10-11 22:26:35.853:E/AndroidRuntime(303):位于android.widget.ListView.makeAndAddView(ListView.java:1727)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.ListView.fillDown(ListView.java:652)上
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.ListView.fillFromTop(ListView.java:709)
10-11 22:26:35.853:E/AndroidRuntime(303):位于android.widget.ListView.layoutChildren(ListView.java:1580)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.AbsListView.onLayout(AbsListView.java:1147)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.layout(view.java:7035)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.setChildFrame(LinearLayout.java:1249)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.layoutVertical(LinearLayout.java:1125)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.onLayout(LinearLayout.java:1042)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.layout(view.java:7035)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.FrameLayout.onLayout(FrameLayout.java:333)上
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.layout(view.java:7035)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.setChildFrame(LinearLayout.java:1249)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.layoutVertical(LinearLayout.java:1125)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.onLayout(LinearLayout.java:1042)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.layout(view.java:7035)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.FrameLayout.onLayout(FrameLayout.java:333)上
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.layout(view.java:7035)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.ViewRoot.performTraversals(ViewRoot.java:1045)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.ViewRoot.handleMessage(ViewRoot.java:1727)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.os.Handler.dispatchMessage(Handler.java:99)上
10-11 22:26:35.853:E/AndroidRuntime(303):在android.os.Looper.loop(Looper.java:123)
10-11 22:26:35.853:E/AndroidRuntime(303):位于android.app.ActivityThread.main(ActivityThread.java:4627)
10-11 22:26:35.853:E/AndroidRuntime(303):位于java.lang.reflect.Method.Invokenactive(本机方法)
10-11 22:26:35.853:E/AndroidRuntime(303):在java.lang.reflect.Method.invoke(Method.java:521)
10-11 22:26:35.853:E/AndroidRuntime(303):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-11 22:26:35.853:E/AndroidRuntime(303):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-11 22:26:35.853:E/AndroidRuntime(303):在dalvik.system.NativeStart.main(本机方法)
10-11 22:26:35.853:E/AndroidRuntime(303):由以下原因引起:java.lang.reflect.InvocationTargetException
10-11 22:26:35.853:E/AndroidRuntime(303):在android.widget.LinearLayout.(LinearLayout.java:115)
10-11 22:26:35.853:E/AndroidRuntime(303):位于java.lang.reflect.Constructor.constructNative(本机方法)
10-11 22:26:35.853:E/AndroidRuntime(303):位于java.lang.reflect.Constructor.newInstance(Constructor.java:446)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.LayoutInflater.createView(LayoutInflater.java:500)
10-11 22:26:35.853:E/AndroidRuntime(303):。。。36多
10-11 22:26:35.853:E/AndroidRuntime(303):原因:java.lang.UnsupportedOperationException:无法转换为维度:type=0x2
10-11 22:26:35.853:E/AndroidRuntime(303):在android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:463)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.(view.java:2036)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.view.(view.java:1834)
10-11 22:26:35.853:E/AndroidRuntime(303):在android.view.ViewGroup。(ViewGroup.java:285)
10-11 22:26:35.853:E/AndroidRuntime(303):。。。40多

就我所知,我没有使用任何特定于Jelly Bean的特性,也不知道会出现什么错误。我确实有一个自定义适配器,但我对它做的不多,我只更改了几个文本视图。

更改您的适配器,例如:

public class MethodAdapter extends ArrayAdapter<Method> {

    LayoutInflater inflater;

    public MethodAdapter(Context context, int layout, int field, ArrayList<Method> methodsList) {
        super(context, layout, field, methodsList);
            inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER);
    }

    class ViewHolder {
        TextView bellName;
        TextView bellType;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
            ViewHolder holder = null;
        if (convertView == null) {
                convertView = inflater.inflate(R.layout.your_item_layout, null);
                holder = new ViewHolder();
                holder.bellName = (TextView) row.findViewById(R.id.bellName);
            holder.bellType = (TextView) row.findViewById(R.id.bellType);
                convertView.addTag(holder);
            } else {
                holder = (ViewHolder)convertView.getTag();
            }

        Method m = getItem(position);

        holder.bellName.setText(m.getName());
        holder.bellType.setText(m.getSuffix());
        return convertView;
    }
}
公共类MethodAdapter扩展了ArrayAdapter{
充气机;
公共方法适配器(上下文上下文、int布局、int字段、ArrayList方法列表){
超级(上下文、布局、字段、方法列表);
充气器=(LayoutFlater)context.getSystemService(