Reputation: 1045
When i try to run my application it crashes and i get the following in logcat:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.application/com.example.application.StartActivity}: android.view.InflateException: Binary XML file line #22: Error inflating class <unknown>
.....
Caused by: android.view.InflateException: Binary XML file line #22: Error inflating class <unknown>
.....
Caused by: java.lang.reflect.InvocationTargetException
.....
Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
the error also includes to a line in my own code where i set the content view
this is the xml file i reference to
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="200dp">
<TextView
android:id="@+id/summonerName"
android:layout_width="439dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:hint="@string/prompt_email"
android:textSize="?android:textAppearanceLarge"
android:singleLine="true" />
<Spinner
android:id="@+id/region"
android:layout_width="83dp"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/summonerName"
android:layout_alignParentRight="true"
/>
<Button
android:id="@+id/btnSearch"
style="?android:textAppearanceSmall"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:background="#777"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="@string/action_sign_in"
android:textColor="#FFF"
android:textStyle="bold" />
</RelativeLayout>
</LinearLayout>
<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#f3f3f4"
android:choiceMode="singleChoice"
android:divider="#dadadc"
android:dividerHeight="1dp"/>
I have no clue what to do with these errors. Can anyone help me onto the right track?
Upvotes: 7
Views: 15857
Reputation: 3504
For me, it was because the layout was using android:theme="@style/AppTheme" in parent Linear Layout. The App theme was defined as:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="actionBarTheme">@color/colorAccent</item>
<item name="android:textColorPrimary">@color/white</item>
<item name="android:textColorHint">@color/white</item>
I removed it and everything worked fine.
Upvotes: 0
Reputation: 823
It might be cause of using high resolution drawable resources.check out drawable file resolutions.
Upvotes: 0
Reputation: 1103
I had the same problem,
problem was that I used a DrawerLayout and that my minSDK was set to below 14. changing that fixed the problem. The android support and appcompat packages for some reason allow you to use the DrawerLayout, but the DrawerLayout definitions for layouts are missing.
changing the minSDK to 14 fixed the issue.
Upvotes: 0
Reputation: 3349
All your @dimens should be defined
for example
<resources>
<!-- Default margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>
You might have added those in for example these folders
Or any other folder of course where they could belong
But don't forget that those also have to be in
They have to be also defined there
if that isn't the problem try to create a value-XXXX folder for every layout-XXXX folder you have
And
for example
Upvotes: 2