答案 0 :(得分:0)
我想要导入库TwoWayView是因为你想创建列表以及水平和垂直网格。如果是这样,我建议您使用名为RecyclerView的,它可以完成您使用TwoWayView所做的一切,即可以水平和垂直创建列表和网格。
在这里,您可以获得有关在水平和垂直方向使用RecyclerView的信息:
http://www.androidhive.info/2016/01/android-working-with-recycler-view/
此外,我不得不说AndroidHive页面上显示的代码存在一些错误。
事实证明,在onCreate()
MainActivity.java
方法prepareMovieData()
中,名为recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
的方法在最后一个地方声明,应该在声明RecyclerView后立即调用,即正确在这一行之后:
Movies
如果在最后一个地方声明了这个调用,则会出现一个错误,即我们创建的对象(在AndroidHive的情况下是null
类)将显示为prepareMovieData()
,即它没有数据。
此外,在mAdapter.notifyDataSetChanged();
方法结束时,以下行说明:
onCreate()
就我个人而言,导致应用程序关闭的应用程序中的这一行失败,消除了这段代码的工作完全激起了我的兴趣。实际上,并不是它服务于这一行,但如果有人知道为什么,我会很感激,编辑此条目解释它。
最后,如果这篇文章的目的是水平创建一个RecyclerView,那么我将对RecyclerView的解释保持水平或垂直。
在文件MainActivity.java
的{{1}}方法中,我们使用以下行将LayoutManager添加到RecyclerView:
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
recyclerView.setLayoutManager(mLayoutManager);
此布局管理器负责告诉RecyclerView,因为我们介绍的数据将被显示,即内容是垂直,水平,列表等。所以如果我们的列表显示水平< / strong>只有我们需要通过以下方式编辑上述行:
RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.HORIZONTAL, false);
recyclerView.setLayoutManager(mLayoutManager);
如果您希望列表垂直,我们会保留原样。
希望这可以帮到你。