java - 在 BlankFragment 上看不到 RecyclerView、CardView
问题描述
我是安卓新手。昨天我在 BlankFragment 上的项目中添加了 RecyclerView 和 CardView。它运行没有错误,但是当我打开它时,它给出“程序已停止”。在教程中,他们将 RecyclerView 包含到 LinearLayout 中。但是在我的 BlankFragment 中我已经有了 FragmentLayout,这就是为什么我认为我不需要它。其他人建议在 androidStudio 上查看 Logcat,之后我得到了 AndroidRuntime: FATALEXCEPTION: main
Process: com.example.ganz.afex_with_default_navigation, PID: 10058
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ganz.afex_with_default_navigation/com.example.ganz.afex_with_default_navigation.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView.setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2957)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3032)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView.setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager)' on a null object reference
at com.example.ganz.afex_with_default_navigation.MainActivity.onCreate(MainActivity.java:46)
at android.app.Activity.performCreate(Activity.java:7174)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2910)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3032)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6944)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
在这个 Logcat 上,我链接到我的 MainActivity.java:46。第 46 行留在 OnCreate 方法中:
lstTovar = new ArrayList<>();
lstTovar.add(new Tovar_tavsiya("Modadagi kiyimlar", "Tovar kategoriyasi", "Description", R.drawable.tile_bg_1));
lstTovar.add(new Tovar_tavsiya("Chet eldan uskunalar", "Tovar kategoriyasi", "Description", R.drawable.tile_bg_2));
lstTovar.add(new Tovar_tavsiya("Tekstil mahsulotlari", "Tovar kategoriyasi", "Description", R.drawable.tile_bg_3));
RecyclerView myrv = (RecyclerView) findViewById(R.id.recyclerview_id);
Recyclerview_Adapter myrv_Adapter = new Recyclerview_Adapter(this, lstTovar);
myrv.setLayoutManager(new GridLayoutManager(this, 3)); ===IT IS THE 46TH ROW===
myrv.setAdapter(myrv_Adapter);
这里fragment_blank.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.ganz.afex_with_default_navigation.BlankFragment">
<!-- TODO: Update blank fragment layout -->
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerview_id"
android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>
</FrameLayout>
PS:我也有他们的适配器、活动、java 文件。如果我也将它们添加在这里,我想这个问题会很混乱。如果您需要他们的零件来解决问题,我将分享它们。先感谢您!
解决方案
推荐阅读
- python - Plotly:如何在图形末端拉伸线?
- coldfusion - Coldfusion cfcontent 不会带我回到我的通话页面
- git - 我在哪里可以找到某些 github 命令的所有可能输出?
- javascript - 解决一个不存储输入的PHP?
- vue.js - 如何将 Foundation 断点实用程序导入 Vue-CLI 项目?
- angular - 有没有办法在不使用影子 DOM 的情况下以 8 角(或 9 角)制作自定义元素?
- javascript - 为什么 HTML5 Canvas 模糊?
- javascript - 从jQuery中的输入文本值中删除重复的逗号分隔数字
- javascript - 如何在 HTML 画布中对齐文本?
- sapui5 - 不显示带有 CDSView 注释的 SAPUI5 SmartChart