android - 嵌套 ScrollView 无法使类膨胀

标签 android compiler-errors android-nestedscrollview

这是我的xml代码,当我运行我的应用程序时,错误出现,告诉我NestedScrollView类存在膨胀错误

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:id="@+id/codinator_layout"
    android:layout_height="match_parent">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbar_layout"
        android:layout_width="match_parent"
        android:layout_height="250dp"
        android:theme="@style/AppTheme.AppBarOverlay"
        app:layout_anchor="@+id/appbar_layout"
        app:layout_anchorGravity="left|top">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">

            <ImageView
                android:id="@+id/imgdetalle"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:background="@drawable/carapp_logo"
                android:scaleType="centerCrop"
                app:layout_collapseMode="parallax" />

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="56dp"
                app:layout_collapseMode="pin"
                app:popupTheme="@style/AppTheme.AppBarOverlay"

                />


        </android.support.design.widget.CollapsingToolbarLayout>

    </android.support.design.widget.AppBarLayout>

    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#ffe5e5e5"
        android:nestedScrollingEnabled="true"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">
<android.support.v7.widget.CardView
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:cardUseCompatPadding="true"
    android:layout_marginTop="15dp"
    app:cardCornerRadius="2dp">
    <LinearLayout
        android:padding="8dp"


        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"

            android:orientation="horizontal"
            >

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="Referencia"
                android:textSize="20dp"
                />
            <TextView
                android:layout_marginLeft="10dp"
                android:id="@+id/detalle_referencia"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
               android:text="asasa3343"/>
            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:text="Precio"/>
            <TextView
                android:id="@+id/detalle_precio"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:textStyle="bold"
                android:background="#af370b"
                android:padding="5dp"
                android:textColor="@android:color/white"
                android:text="$500000000"/>
        </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"

       >

        <TextView

            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="Modelo"
            android:textSize="20dp"
            />
        <TextView
            android:layout_marginLeft="10dp"
            android:id="@+id/detalle_modelo"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="2020"/>
    </LinearLayout>
        <LinearLayout
            android:id="@+id/lymotor"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal"
            >

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="Motor"
                android:textSize="20dp"
                />
            <TextView
                android:layout_marginLeft="10dp"
                android:id="@+id/detalle_motor"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="120000 km"/>
        </LinearLayout>
        <LinearLayout
            android:id="@+id/lykilometraje"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal"
            android:visibility="gone"
            >

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="Kilometraje"
                android:textSize="20dp"
                />
            <TextView
                android:layout_marginLeft="10dp"
                android:id="@+id/detalle_kilometraje"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="120000 km"/>
        </LinearLayout>




    </LinearLayout>
</android.support.v7.widget.CardView>

        <TextView
            android:id="@+id/txt_descripcion"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Descripcion"
            android:layout_marginTop="130dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"/>





    </android.support.v4.widget.NestedScrollView>

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="end|bottom"
        app:fabSize="mini"
        android:src="@drawable/ic_favorite_border"
        android:layout_margin="16dp" />

</android.support.design.widget.CoordinatorLayout>

这是我类
package com.example.mac.mycarapp.UI;

import android.os.Bundle;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.CoordinatorLayout;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Display;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.example.mac.mycarapp.Modelos.Automoviles;
import com.example.mac.mycarapp.R;

import butterknife.BindView;
import butterknife.ButterKnife;

public class CarroDetalleActivity extends AppCompatActivity {
    @BindView(R.id.detalle_modelo)
    TextView detalleModelo;
    @BindView(R.id.detalle_kilometraje)
    TextView detalleKilometraje;
    @BindView(R.id.detalle_motor)
    TextView detalleMotor;
    @BindView(R.id.lykilometraje)
    LinearLayout lykilometraje;
    @BindView(R.id.detalle_precio)
    TextView detallePrecio;
    @BindView(R.id.txt_descripcion)
    TextView detalle_descripcion_vehiculo;


    private Automoviles automoviles;

    @BindView(R.id.imgdetalle)
    ImageView imgdetalle;

    @BindView(R.id.detalle_referencia)
    TextView txt_referencia;
    @BindView(R.id.appbar_layout)
    AppBarLayout appBarLayout;

    @BindView(R.id.codinator_layout)
    CoordinatorLayout coordinatorLayout;




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_carro_detalle);

        ButterKnife.bind(this);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);

        automoviles = getIntent().getExtras().getParcelable("ListaVehiculos");
        toolbar.setTitle(automoviles.getMarca());
        detalleModelo.setText(automoviles.getYear() + "");
        if (!automoviles.isNuevo()) {
            lykilometraje.setVisibility(View.VISIBLE);
        }
        detalleKilometraje.setText(automoviles.getKilometraje() + "");
        detalleMotor.setText(automoviles.getMotor() + "");
        txt_referencia.setText(automoviles.getReferencia());
        detalleMotor.setText(automoviles.getMotor()+"");
        detallePrecio.setText("$"+automoviles.getPrecio());
        detalle_descripcion_vehiculo.setText(R.string.descripcion_prueba);

        Glide.with(this).load(automoviles.getImagen()).into(imgdetalle);

        final Display dwigth = getWindowManager().getDefaultDisplay();

        appBarLayout.post(new Runnable() {
            @Override
            public void run() {
                int heigthPx = dwigth.getWidth() * 1 / 3;
                setAppbarOffset(heigthPx);
            }
        });

    }

    private void setAppbarOffset(int heigthPx) {
        CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) appBarLayout.getLayoutParams();
        AppBarLayout.Behavior behavior = (AppBarLayout.Behavior) params.getBehavior();
        behavior.onNestedPreScroll(coordinatorLayout, appBarLayout, null, 0, heigthPx, new int[]{0, 0});
    }
}

我检查了这个帖子

Error inflating class - NestedScrollView - class not found



但是我在那里遵循了建议。

最佳答案

NestedScrollView应该只包含一个 child 。但是你加了2

  • CardView
  • TextView

  • 删除以下TextView,它应该可以工作
           <TextView
                android:id="@+id/txt_descripcion"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Descripcion"
                android:layout_marginTop="130dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="10dp"/>
    

    关于android - 嵌套 ScrollView 无法使类膨胀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51714093/

    相关文章:

    Android lint 错误? : conditional operator operator

    android - 在android中不使用kso​​ap解析soap响应

    c++ - 使用telnet C++编译 “cin >> a >> b”时出错

    linux - Python 构建完成,但未找到构建这些模块的必要位

    android - 禁用 NestedScrollview 滚动

    android - 如何避免在Android中依赖的无知?

    android - layout_constraintStart_toStartOf ="parent"在 RTL 中被破坏

    c# - .NET-无法构建项目

    java - 如何在android中使用SwipeRefreshLayout和imageView进入NestedScrollView

    android - NestedScrollView 内的子级未覆盖整个屏幕高度