-1

As stated above im trying to implement googlemaps into my app and keep getting "Error inflating class fragment" error at the beggining of the map fragment xml. Here's the xml tag in which the fragment is situated:

            <android.support.constraint.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <fragment
        android:id="@+id/activity_main_map_display"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity" />

    <EditText
        android:id="@+id/activity_main_text_edit"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:background="@color/colorWhite"
        android:inputType="text"
        android:text="@string/activity_main_search_button"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>

Here's the error message I've been getting(line 21 is the beginning of the fragment tag):

> E/AndroidRuntime: FATAL EXCEPTION: main
>     Process: com.example.robert.pkpwayfinder, PID: 3947
>     java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.robert.pkpwayfinder/com.example.robert.pkpwayfinder.MainActivity}:
> android.view.InflateException: Binary XML file line #21: Binary XML
> file line #21: Error inflating class fragment
>         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3253)
>         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
>         at android.app.ActivityThread.access$1100(ActivityThread.java:221)
>         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
>         at android.os.Handler.dispatchMessage(Handler.java:102)
>         at android.os.Looper.loop(Looper.java:158)
>         at android.app.ActivityThread.main(ActivityThread.java:7224)
>         at java.lang.reflect.Method.invoke(Native Method)
>         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
>         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
>      Caused by: android.view.InflateException: Binary XML file line #21: Binary XML file line #21: Error inflating class fragment
>         at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
>         at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
>         at android.view.LayoutInflater.inflate(LayoutInflater.java:380)
>         at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469)
>         at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
>         at com.example.robert.pkpwayfinder.MainActivity.onCreate(MainActivity.kt:55)
>         at android.app.Activity.performCreate(Activity.java:6876)
>         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
>         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)
>         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349) 
>         at android.app.ActivityThread.access$1100(ActivityThread.java:221) 
>         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) 
>         at android.os.Handler.dispatchMessage(Handler.java:102) 
>         at android.os.Looper.loop(Looper.java:158) 
>         at android.app.ActivityThread.main(ActivityThread.java:7224) 
>         at java.lang.reflect.Method.invoke(Native Method) 
>         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 
>         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
nfsu
  • 113
  • 2
  • 10

2 Answers2

0

Being a fragment, this component can be added to an activity's layout file simply with the XML below documentation:

<fragment
    class="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>

Replace this line:

android:name="com.google.android.gms.maps.SupportMapFragment"

And make sure you added dependency:

implementation 'com.google.android.gms:play-services-maps:16.0.0'
Mykhailo
  • 331
  • 3
  • 18
0

Solution :

 android:class"com.google.android.gms.maps.SupportMapFragment"
 Change it like this :

 android:name="com.google.android.gms.maps.SupportMapFragment"
Rocky
  • 457
  • 4
  • 11