膨胀类片段时出错

时间:2016-01-21 20:47:01

标签: android android-layout android-fragments

我的Android应用程序有点问题。 所以我有一个地图片段,我试图在它下面放一个listview。 当我尝试填充listview时出现错误,它之前显示为空,但是一旦我将它绑定到适配器,它就会给我这个错误:

  

01-21 20:43:17.635 19597-19597 / boxcom.secondattempt E / AndroidRuntime:FATAL EXCEPTION:main   01-21 20:43:17.635 19597-19597 / boxcom.secondattempt E / AndroidRuntime:进程:boxcom.secondattempt,PID:19597   01-21 20:43:17.635 19597-19597 / boxcom.secondattempt E / AndroidRuntime:android.view.InflateException:二进制XML文件行#22:错误膨胀类片段

这是我的XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent"
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/app_bar_main_menu" tools:context="boxcom.secondattempt.MainMenu">


    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/map"
        android:layout_alignParentStart="true"
        android:layout_marginTop="70dp"
        android:weightSum="1">

        <fragment
            android:id="@+id/map"
            android:layout_width="fill_parent"
            android:layout_height="0dp"
            class="com.google.android.gms.maps.MapFragment"
            android:layout_weight="0.75"
            android:layout_gravity="top|bottom"></fragment>

        <ListView
                    android:id="@+id/listv"
                    android:background="@color/com_facebook_blue"
                    android:layout_width="354dp"
                    android:layout_height="187dp"></ListView>

    </LinearLayout>


</RelativeLayout>

我填充的地方:

public void init_endroits()
{
    Place A = new Place();
    Place B = new Place();
    Place C = new Place();

    A.setName("Café A");
    B.setName("Restaurant B");
    C.setName("Musée C");
    A.setDescription("C'est un café");
    B.setDescription("C'est un restaurant");
    C.setDescription("C'est un Musée");

    ListView LV = (ListView)findViewById(R.id.listv);
    Endroits.add(A);
    Endroits.add(B);
    Endroits.add(C);
    adapter = new ArrayAdapter<Place>(this,R.layout.activity_main_menu,Endroits);
    LV.setAdapter(adapter);
    LV.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1,
                                int position, long arg3) {
            Place X = Endroits.get(position);
            Toast.makeText(MainMenu.this, X.getDescription().toString(), Toast.LENGTH_SHORT).show();
        }
    });


}

我在加载所有内容后调用此方法,当我按下导航栏中的按钮时。

你能帮我吗?

1 个答案:

答案 0 :(得分:0)

我只是猜测这是“Error inflating class fragment” with google map stackoverflow问题的重复,因为您正在使用MapCompragment支持AppCompatActivity。

用SupportMapFragment替换MapFragment,这应该清除这个特定的崩溃。