Android Studio中的LinearLayout和FrameLayout多个错误

所以我现在正在制作这个应用程序,这是我正在使用/编码的activity_maps.xml文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="vertical">

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

<FrameLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_height="match_parent"
    android:layout_width="match_parent">

<Button
    android:id="@+id/btnRestaurant"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="Nearby Restaurants"
    android:visibility="visible" />

<Button
    android:id="@+id/btnHospital"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="Nearby Hospitals"
    android:visibility="visible" />

<Button
    android:id="@+id/btnSchool"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:text="Nearby Schools"
    android:visibility="visible" />
</FrameLayout>

显示的错误是,只要我将鼠标悬停在linearlayout上方,它就会显示:应该定义layout_height属性,应该定义layout_width属性,元素LinearLayout没有必需的属性layout_height,元素LinearLayout没有必需的属性layout_width,错误方向?没有指定方向,默认是水平的,但是这个布局有多个孩子,其中至少有一个孩子有layout_width =“match_parent”。 然后,这些是我悬停在FrameLayout之上时的错误:应该定义layout_height属性,应该定义layout_width属性。 这些是我悬停在按钮标签上方时的错误:应该定义layout_height属性,应该定义layout_width属性。 这些是我悬停在abdroid之上时的错误:id =“@ + id / btnwhatever”,android:text =“whatever”,android:visibility =“visible”标签他们都说:意外的命名空间前缀“android” 。 当我将应用程序的布局更改为:

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="350dp"
android:layout_height="500dp"

<FrameLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_height="125dp"
    android:layout_width="75dp">

    <LinearLayout 
        xmlns:android="https://schemas.android.com/apk/res/android"
        xmlns:tools="https://schemas.android.com/tools"
        android:layout_height="75dp"
        android:layout_width="100dp"
        android:orientation="vertical">

        <Button
            android:id="@+id/btnRestaurant"
            android:layout_height="10dp"
            android:layout_width="10dp"
            android:text="Nearby Restaurants"
            android:visibility="visible" />

        <Button
            android:id="@+id/btnHospital"
            android:layout_height="10dp"
            android:layout_width="10dp"
            android:text="Nearby Hospitals"
            android:visibility="visible" />

        <Button
            android:id="@+id/btnSchool"
            android:layout_height="10dp"
            android:layout_width="10dp"
            android:text="Nearby Schools"
            android:visibility="visible" />

    </LinearLayout>
</FrameLayout>

然而,当我做这样的布局显示没有错误,然后我打开它在logcat上说的地图:java.lang.RuntimeException:二进制XML文件行#0:您必须提供一个layout_width属性请帮助,谢谢。 PS我只是拿出片段中的工具:context =“”标签进行发布


正如迈克所说,也从FrameLayout标签中移除重复的xmlns xmlns:android="https://schemas.android.com/apk/res/android" 。 这是我测试过的代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:orientation="vertical">

        <fragment xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:map="http://schemas.android.com/apk/res-auto"
            xmlns:tools="http://schemas.android.com/tools"
            android:id="@+id/map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></fragment>

        <FrameLayout
            android:layout_height="match_parent"
            android:layout_width="match_parent">

            <Button
                android:id="@+id/btnRestaurant"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:text="Nearby Restaurants"
                android:visibility="visible" />

            <Button
                android:id="@+id/btnHospital"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:text="Nearby Hospitals"
                android:visibility="visible" />

            <Button
                android:id="@+id/btnSchool"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:text="Nearby Schools"
                android:visibility="visible" />
        </FrameLayout>
    </LinearLayout>
链接地址: http://www.djcxy.com/p/79949.html

上一篇: LinearLayout and FrameLayout multiple errors in Android Studio

下一篇: Why shouldn't I set layout