当前位置: 首页 > 知识库问答 >
问题:

Recyclerview导致应用程序崩溃

红弘盛
2023-03-14

这里是Android开发者新手。我在MainActivity中使用recyclerview,应用程序不断崩溃。

任何帮助都将受到赞赏!

编辑:对不起,我是新来的。我已经附加了Logcat。和其他xml文件。谢谢

这是我的html" target="_blank">代码:

列出你的布局。xml:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v7.widget.CardView
        android:id="@+id/cardView"
        android:layout_width="match_parent"
        android:layout_height="140dp">

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

            <TextView
                android:id="@+id/textView_Desc"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBottom="@+id/imageView"
                android:layout_centerHorizontal="true"
                android:text="Description"
                android:textSize="25sp" />

            <ImageView
                android:id="@+id/imageView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:layout_marginTop="0dp"
                app:srcCompat="@drawable/ic_launcher_background" />

            <TextView
                android:id="@+id/textView_Name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignTop="@+id/imageView"
                android:layout_centerHorizontal="true"
                android:text="Title"
                android:textAppearance="@style/TextAppearance.AppCompat"
                android:textColor="@color/Black"
                android:textSize="36sp" />
        </RelativeLayout>

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

activity_main.xml:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:layout_height="match_parent"
    tools:context="e.wolverine2.recyclerview.MainActivity">


    <android.support.v7.app.AlertController.RecycleListView

        android:id="@+id/recyclerView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:dividerHeight="5dp">

    </android.support.v7.app.AlertController.RecycleListView>


</RelativeLayout>



public class MainActivity extends AppCompatActivity {

RecyclerView recyclerView;
ProductAdapter productAdapter;
List<Product> productList;

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


    final LinearLayoutManager layoutManager = new LinearLayoutManager(this);
    layoutManager.setOrientation(LinearLayoutManager.VERTICAL);

    System.out.println("TAG : 1");

    productList = new ArrayList<>();

    productList.add(new Product(
       1,"Laptop","New Computer",R.drawable.ic_launcher_background
    ));

    productList.add(new Product(
            2, "Mobile Phone", "New Phone", R.drawable.ic_launcher_foreground
    ));


    recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
    recyclerView.setHasFixedSize(true);

    productAdapter = new ProductAdapter(this, productList);
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(productAdapter);

}

}

ProductAdapter。java类:

public class ProductAdapter extends 

RecyclerView.Adapter<ProductAdapter.ProductViewHolder>{

private Context context;
private List<Product> productList;


public ProductAdapter(Context context, List<Product> productList) {
    this.context = context;
    this.productList = productList;
}

@Override
public ProductViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    LayoutInflater inflater = LayoutInflater.from(context);
    View view = inflater.inflate(R.layout.list_layout, null);


    ProductViewHolder productViewHolder = new ProductViewHolder(view);

    return new ProductViewHolder(view);
}

@Override
public void onBindViewHolder(ProductViewHolder holder, int position) {

    Product product = productList.get(position);
    holder.textView_Title.setText(product.getTitle());
    holder.textView_Desc.setText(product.getDesc());

    holder.imageView.setImageDrawable(context.getResources().getDrawable(product.getImage()));
}

@Override
public int getItemCount() {
    return productList.size();
}

class ProductViewHolder extends RecyclerView.ViewHolder {


    ImageView imageView;
    TextView textView_Title;
    TextView textView_Desc;


    public ProductViewHolder(View itemView) {
        super(itemView);

        imageView = itemView.findViewById(R.id.imageView);
        textView_Title = itemView.findViewById(R.id.textView_Name);
        textView_Desc = itemView.findViewById(R.id.textView_Desc);
    }
}

}

Logcat:

致命异常:主进程:e.wolverine2.recyclerview,PID:3738java.lang.运行时异常:无法启动活动组件信息{e.wolverine2.recyclerview/e.wolverine2.recyclerview.MainActivity}:android.view.膨胀异常:二进制XML文件行#0:二进制XML文件行#0:inflating类android.support.v7.app.AlertController错误。RecycleListView在android.app.ActivityThread.perform启动活动(ActivityThread.java:3003)在android.app.ActivityThread.handle启动活动(ActivityThread.java:3064)在android.app.ActivityThread-wrap14(ActivityThread.java)在android.app.ActivityThread$H. handleMessage(ActivityThread.java:1659)在android.os.Handler.dispatchMessage(Handler.java:102)在android.os.Looper.loop(Looper. java: 154)在android. app。ActivityThread. main(ActivityThread. java: 6816)在java. lang. reect。方法。调用(本机方法)在com. android. interal. os。ZygoteInit$MEodAndArgsCaller. run(ZygoteInit. java: 1563)在com. android. interal. os。ZygoteInit. main(ZygoteInit. java: 1451)引起的:android. view。InflateExctive:二进制XML文件行#0:二进制XML文件行#0:错误inflating类android. support. v7. app。AlertController。RecycleListView引起的:android. view。InflateExctive:二进制XML文件行#0:错误inflating类android. support. v7. app。AlertController。RecycleListView引起的:java. lang。ClassNotFoundExctive:没有找到类"android. support. v7. app。AlertController。RecycleListView"在路径上:DexPathList[[zip file"/data/app/e. Wolverine2.回收者视图-1/base. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_dependencies_apk. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_0_apk. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_1_apk. apk", zip file"/data/app"/e.wolverine2.recyclerview-1/split_lib_slice_2_apk.apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_3_apk. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_4_apk. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_5_apk. apk", zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_6_apk. apk", zip file"/data/app"/e.wolverine2.recyclerview-1/split_lib_slice_7_apk.apk,zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_8_apk. apk",zip file"/data/app/e. Wolverine2.回收者视图-1/split_lib_slice_9_apk. apk"],nativeLibraryDirectory=[/data/app/e. Wolverine2.回收者视图-1/lib/arm, /system/lib, /vendor/lib]]在dalvik. system。BaseDexClassLoader. findClass(BaseDexClassLoader. java: 56)在java. lang。ClassLoader. loadClass(ClassLoader. java: 380)在java. lang。ClassLoader. loadClass(ClassLoader. java: 312)在android. view。LayoutInflater. createView(LayoutInflater. java: 616)在android. view。LayoutInflater. createViewFromTag(LayoutInflater. java: 794)在android. view。LayoutInflater. createViewFromTag(LayoutInflater. java: 734)在android. view。LayoutInflate. rInflate(LayoutInflater. java: 865)在android. view。LayoutInflater. rInflate儿童(LayoutInflater. java: 828)在android. view。LayoutInflater.膨胀(LayoutInflater. java: 525)在android. view。LayoutInflater.膨胀(LayoutInflater. java: 427)在android. view。LayoutInflate.膨胀(LayoutInflater. java: 378)在android. support. v7. app。AppCompatateInv9.在android. app上创建(MainActivity. java:21)。在android. app上创建(Activity. java:6977)。在android. app上创建仪器。在android. app上创建活动。在android. app上创建活动线程。在android. app上启动活动(ActivityThread. java:2946)。在android. app上创建活动线程。在android. app上创建活动线程。在android. app上创建活动线程。

共有1个答案

琴镜
2023-03-14

改变这个

<android.support.v7.app.AlertController.RecycleListView
        android:id="@+id/recyclerView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:dividerHeight="5dp">
    </android.support.v7.app.AlertController.RecycleListView>

<android.support.v7.widget.RecyclerView
            android:id="@+id/recyclerView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
          />

警报控制器。RecycleListView和RecycleView都不同。

 类似资料:
  • 我正在使用内置于Web View的Android开发浏览器。其中我面临的一个问题是,当我访问http://crashmybrowser.com测试浏览器上的选项卡崩溃时,我的整个浏览器应用程序都会崩溃。但是,当在chrome或Opera上进行相同的测试时,这些浏览器会在崩溃中幸存下来,并且只有特定的选项卡崩溃是由于访问上述网站而预期的结果。有人能帮助理解我如何在使用Webview的浏览器上处理此崩

  • 问题内容: 我正在开发一个Android 3.1应用程序,该应用程序使用USB主机模式通过USB上的MIDI与我的键盘(Korg M3)进行通信。这是在装有Android 4.0.3的Xoom上运行的。我可以通过USB接收MIDI消息而没有任何问题,但是将音符数据发送回键盘的效果是好坏参半,延迟半秒钟后便会频繁崩溃。 这是我在点击操作栏上的按钮发送注释时不断遇到的错误: E / dalvikvm(

  • 问题内容: 我已经在我的应用中实现了GCM通知。我现在尝试在用户注销时注销该应用程序。我正在使用以下代码。执行此代码时,它将导致应用程序崩溃,并显示以下logcat: 这是代码: 问题答案: 将支持库更新为25.0.0后,我遇到了同样的问题。对我来说,更新下面的库之后,在应用程序gradle文件中,问题消失了。

  • 当我初始化的元素应用程序崩溃,如果我不初始化任何元素的应用程序显示的布局只是罚款和做一些基本的功能,我已经添加了使用在XML的onClick属性的方法 我需要从EditText元素中提取数据来进行计算。 java代码: 坠机记录: 致命例外:主进程:com.ajaydubey.fifamobilebulktradeprofitcounter,PID:17627java.lang.运行时异常:无法启

  • 我试图从我的框架中获得轮廓,这就是我所做的: .................................................... 程序在处崩溃,我收到以下错误消息: OpenCV错误:不支持的格式或格式组合([开始]FindContour只支持8uC1和32sC1图像)在未知的功能,文件......\src\openc v\模块\imgproc\src\contours.cp

  • 随着xamarin的最新更新(安装了xamarin android N sdk、xamarin studio 6.1等),当设备与调试器断开连接时,我的android应用程序会崩溃。当调试器连接到设备时,它可以很好地工作。 我已经尝试过Nexus 7、三星Galaxy Note 2和Redmi Note 3。但是当我在断开设备与调试器的连接后尝试运行应用程序时,它不起作用。 共享相同的堆栈跟踪和设