报错日志如下:
12-04 14:48:19.445 22782-22782/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.sdkj.heaterbluetooth.activity, PID: 22782
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sdkj.heaterbluetooth.activity/com.sdkj.heaterbluetooth.activity.ViewPageActivity}: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sdkj.heaterbluetooth.activity/com.sdkj.heaterbluetooth.activity.HeaterActivity}: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2439)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2500)
at android.app.ActivityThread.access$900(ActivityThread.java:167)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5401)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:919)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:714)
Caused by: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sdkj.heaterbluetooth.activity/com.sdkj.heaterbluetooth.activity.HeaterActivity}: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2439)
at android.app.ActivityThread.startActivityNow(ActivityThread.java:2233)
at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:136)
at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:348)
at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:756)
at android.widget.TabHost.setCurrentTab(TabHost.java:420)
at android.widget.TabHost.addTab(TabHost.java:247)
at com.sdkj.heaterbluetooth.activity.ViewPageActivity.initTab(ViewPageActivity.java:126)
at com.sdkj.heaterbluetooth.activity.ViewPageActivity.onCreate(ViewPageActivity.java:60)
at android.app.Activity.performCreate(Activity.java:6074)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1112)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2500)
at android.app.ActivityThread.access$900(ActivityThread.java:167)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5401)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:919)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:714)
Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:572)
at android.view.ViewGroup$MarginLayoutParams.<init>(ViewGroup.java:6839)
at android.widget.FrameLayout$LayoutParams.<init>(FrameLayout.java:741)
at android.support.percent.PercentFrameLayout$LayoutParams.<init>(PercentFrameLayout.java:122)
at android.support.percent.PercentFrameLayout.generateLayoutParams(PercentFrameLayout.java:99)
at android.support.percent.PercentFrameLayout.generateLayoutParams(PercentFrameLayout.java:77)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:853)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:854)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:854)
at android.view.LayoutInflater.inflate(LayoutInflater.java:510)
at android.view.LayoutInflater.inflate(LayoutInflater.java:420)
at android.view.LayoutInflater.inflate(LayoutInflater.java:371)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
at com.sdkj.heaterbluetooth.activity.HeaterActivity.onCreate(HeaterActivity.java:82)
at android.app.Activity.performCreate(Activity.java:6074)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1112)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.startActivityNow(ActivityThread.java:2233)
at android.app.LocalActivityManager.moveToState(LocalActivityManager.java:136)
at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:348)
at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:756)
at android.widget.TabHost.setCurrentTab(TabHost.java:420)
at android.widget.TabHost.addTab(TabHost.java:247)
at com.sdkj.heaterbluetooth.activity.ViewPageActivity.initTab(ViewPageActivity.java:126)
at com.sdkj.heaterbluetooth.activity.ViewPageActivity.onCreate(ViewPageActivity.java:60)
at android.app.Activity.performCreate(Activity.java:6074)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1112)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2392)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2500)
at android.app.ActivityThread.access$900(ActivityThread.java:167)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5401)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:919)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:714)
原因:在values-1280x720文件夹下dimens.xml文件中定义了几个在程序中用到的尺寸数据。而在values文件夹下定义的dimens.xml文件中忘了定义,所以导致在手机屏幕分辨率不是1280*720的时候就会包错。