Intereting Posts
Различать MMS и SMS через прослушиватели MMS / SMS в Android SetCanceledOnTouchOutside не работает, когда я нажимаю рядом с диалогом снаружи Помогите мне узнать, как правильно использовать службы и темы Проблема с запуском ApiDemos в Eclipse Textview onclicklistener со ссылками Изменение поведения SimpleDateFormat в Android Marshmallow Легкий способ аутентификации запросов POST от клиента Google Android к Google App Engine? Android-приложение не будет обновляться из активности Android-адаптер синхронизации с приложениями учетных записей пользователей Google В Android, как я могу отображать селектор приложений на основе типа файла? Панель действий не показана с помощью AppCompat ConstraintLayout: Что делает `layout_constraintLeft_creator` в xml? Не устанавливайте Android Market INSTALL_REFERRER на Android 3.x «Это приложение доступно для более чем 0 устройств». Могу ли я настраивать глобальные пользовательские стили приложения для виджета для поддержки Android?

Android 'InvocationTargetException' и 'UnsupportedOperationException'

Я столкнулся с проблемой на OPPO X905 и OPPO X907, оба из Android 4.0.3 (API-уровень 15), я не использовал API более высокого уровня, и я искал в Google и SO, все они отличаются от моей проблемы , Ниже мой xml-файл и журнал сбоев, спасибо заранее.

Xml-файл: (поле разделителя было первоначально 7.5dp, может это проблема?)

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/item_full" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#eff0f7" android:baselineAligned="false" android:orientation="vertical" > <RelativeLayout android:id="@+id/item_first_half" android:layout_width="match_parent" android:layout_height="36dp" android:orientation="vertical" > <View android:id="@+id/first_path" android:layout_width="4dp" android:layout_height="4dp" android:layout_marginLeft="40dp" android:layout_marginStart="40dp" android:background="@drawable/selector_car_action_path" /> <ImageView android:id="@+id/im_car_direction_icon" android:layout_width="28dp" android:layout_height="28dp" android:layout_gravity="top" android:layout_marginLeft="28dp" android:layout_marginStart="28dp" android:layout_marginTop="4dp" android:background="@drawable/selector_car_action_background" android:padding="2dp" android:src="@drawable/selector_navi_icon_63" /> <View android:id="@+id/second_path" android:layout_width="4dp" android:layout_height="4dp" android:layout_below="@id/im_car_direction_icon" android:layout_marginLeft="40dp" android:layout_marginStart="40dp" android:background="@drawable/selector_car_action_path" /> <TextView android:id="@+id/tv_direction" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_marginEnd="15dp" android:layout_marginLeft="68dp" android:layout_marginRight="15dp" android:layout_marginStart="68dp" android:singleLine="true" android:text="" android:textColor="@drawable/selector_car_route_turn_text" android:textSize="16sp" /> </RelativeLayout> <RelativeLayout android:id="@+id/item_second_half" android:layout_width="match_parent" android:layout_height="32dp" > <View android:id="@+id/third_path" android:layout_width="4dp" android:layout_height="match_parent" android:layout_marginLeft="40dp" android:layout_marginStart="40dp" android:background="@drawable/selector_car_action_path" /> <TextView android:id="@+id/tv_road_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="68dp" android:layout_marginStart="68dp" android:layout_marginTop="4dp" android:singleLine="true" android:text="" android:textColor="@drawable/selector_car_route_desc" android:textSize="16sp" /> <TextView android:id="@+id/divider_for_road_and_distance" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_marginEnd="7dp" android:layout_marginLeft="7dp" android:layout_marginRight="7dp" android:layout_marginStart="7dp" android:layout_marginTop="4dp" android:layout_toEndOf="@id/tv_road_name" android:layout_toRightOf="@id/tv_road_name" android:singleLine="true" android:text="|" android:textColor="@drawable/selector_car_route_desc" android:textSize="16sp" /> <TextView android:id="@+id/tv_ride_distance" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="15dp" android:layout_marginRight="15dp" android:layout_marginTop="4dp" android:layout_toEndOf="@id/divider_for_road_and_distance" android:layout_toRightOf="@id/divider_for_road_and_distance" android:singleLine="true" android:text="" android:textColor="@drawable/selector_car_route_desc" android:textSize="16sp" /> <View android:layout_width="match_parent" android:layout_height="1px" android:layout_alignParentBottom="true" android:layout_marginEnd="15dp" android:layout_marginLeft="68dp" android:layout_marginRight="15dp" android:layout_marginStart="68dp" android:background="#dee1f0" /> </RelativeLayout> </LinearLayout> 

Файл drawable / selector_car_route_desc является

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_selected="true" android:color="@color/color_999999"/> <item android:state_selected="false" android:color="@color/color_333333"/> </selector> 

Аварийный журнал:

 android.view.InflateException: Binary XML file line #106: Error inflating class <unknown> android.view.LayoutInflater.createView(LayoutInflater.java:606) com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) android.view.LayoutInflater.onCreateView(LayoutInflater.java:653) android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678) android.view.LayoutInflater.rInflate(LayoutInflater.java:739) android.view.LayoutInflater.rInflate(LayoutInflater.java:742) android.view.LayoutInflater.inflate(LayoutInflater.java:489) android.view.LayoutInflater.inflate(LayoutInflater.java:396) android.view.LayoutInflater.inflate(LayoutInflater.java:352) com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78) com.tencent.map.ama.route.ui.view.fa(CarRouteShowView.java:100) com.tencent.map.ama.route.ui.view.da(CarRouteDetailView.java:37) com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418) com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255) android.os.Handler.handleCallback(Handler.java:605) android.os.Handler.dispatchMessage(Handler.java:92) android.os.Looper.loop(Looper.java:137) android.app.ActivityThread.main(ActivityThread.java:4476) java.lang.reflect.Method.invokeNative(Native Method) java.lang.reflect.Method.invoke(Method.java:511) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575) dalvik.system.NativeStart.main(Native Method) cause by: java.lang.reflect.InvocationTargetException: null java.lang.reflect.Constructor.constructNative(Native Method) java.lang.reflect.Constructor.newInstance(Constructor.java:417) android.view.LayoutInflater.createView(LayoutInflater.java:586) com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) android.view.LayoutInflater.onCreateView(LayoutInflater.java:653) android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678) android.view.LayoutInflater.rInflate(LayoutInflater.java:739) android.view.LayoutInflater.rInflate(LayoutInflater.java:742) android.view.LayoutInflater.inflate(LayoutInflater.java:489) android.view.LayoutInflater.inflate(LayoutInflater.java:396) android.view.LayoutInflater.inflate(LayoutInflater.java:352) com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78) com.tencent.map.ama.route.ui.view.fa(CarRouteShowView.java:100) com.tencent.map.ama.route.ui.view.da(CarRouteDetailView.java:37) com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418) com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255) android.os.Handler.handleCallback(Handler.java:605) android.os.Handler.dispatchMessage(Handler.java:92) android.os.Looper.loop(Looper.java:137) android.app.ActivityThread.main(ActivityThread.java:4476) java.lang.reflect.Method.invokeNative(Native Method) java.lang.reflect.Method.invoke(Method.java:511) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575) dalvik.system.NativeStart.main(Native Method) cause by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x12 android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:463) android.view.View.<init>(View.java:2849) android.widget.TextView.<init>(TextView.java:499) android.widget.TextView.<init>(TextView.java:492) java.lang.reflect.Constructor.constructNative(Native Method) java.lang.reflect.Constructor.newInstance(Constructor.java:417) android.view.LayoutInflater.createView(LayoutInflater.java:586) com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) android.view.LayoutInflater.onCreateView(LayoutInflater.java:653) android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:678) android.view.LayoutInflater.rInflate(LayoutInflater.java:739) android.view.LayoutInflater.rInflate(LayoutInflater.java:742) android.view.LayoutInflater.inflate(LayoutInflater.java:489) android.view.LayoutInflater.inflate(LayoutInflater.java:396) android.view.LayoutInflater.inflate(LayoutInflater.java:352) com.tencent.map.ama.route.ui.view.e.<init>(CarRouteShowItem.java:78) com.tencent.map.ama.route.ui.view.fa(CarRouteShowView.java:100) com.tencent.map.ama.route.ui.view.da(CarRouteDetailView.java:37) com.tencent.map.ama.route.ui.MapStateCarRoute.e(MapStateCarRoute.java:418) com.tencent.map.ama.route.ui.MapStateCarRoute$1.run(MapStateCarRoute.java:255) android.os.Handler.handleCallback(Handler.java:605) android.os.Handler.dispatchMessage(Handler.java:92) android.os.Looper.loop(Looper.java:137) android.app.ActivityThread.main(ActivityThread.java:4476) java.lang.reflect.Method.invokeNative(Native Method) java.lang.reflect.Method.invoke(Method.java:511) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:808) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:575) dalvik.system.NativeStart.main(Native Method) 

Код CarRouteShowItem.java:78 выглядит следующим образом:

 View mView = LayoutInflater.from(mContext).inflate(R.layout.car_route_detail_item, null); 

CarRouteShowItem не является дочерним элементом View, его код выглядит следующим образом:

 public class CarRouteShowItem { private Context mContext; private View mView; public CarRouteShowItem(Context context) { mContext = context; // mView is used by caller mView = LayoutInflater.from(mContext).inflate(R.layout.car_route_detail_item, null); // some view finds } // some other methods related with specific logic } 

Графический макет можно было просмотреть в Eclipse с уровня API 8 до уровня API 23, но когда я просмотрю его в Android Studio на уровне API 15, он выдает сообщение об ошибке: Не удалось разрешить ресурс @ style / Widget.TextView , другой API Уровни в порядке, но я не использовал стиль для TextView.

Все, что вам нужно – это дополнительный глаз 🙂

Введите описание изображения здесь

  android:layout_height="1px" 

Надеюсь, что вы можете видеть сейчас. Последний ребенок во втором RelativeLayout с id item_second_half типа <View измените его на

 android:layout_height="1dp" 

Позвольте мне взглянуть назад как можно скорее

Я думаю, что проблема находится где-то в стиле @, указанном в AppTheme. Попробуйте удалить все из них (сбросить до значения по умолчанию) и добавить один за другим до тех пор, пока не произойдет сбой. Таким образом, вы можете найти стиль, который имеет неправильные атрибуты.

Если вы увидите ошибку журнала, вы увидите, что InvocationTargetException происходит через java.lang.UnsupportedOperationException: невозможно преобразовать в измерение: type = 0x12

ОБНОВИТЬ

Я заметил что-то плохое в вашем XML-файле, вы используете цвет текста как «drawable», вам нужно использовать xml-файл цветов ( пример )

ОБНОВЛЕНИЕ

После большего поиска я нашел этот файл, если вы видите строку 499 и 492 (которая появляется в logerror), вы увидите, что, возможно, он не смог найти стиль для textview