当前,我正在为电视制作应用布局,我面临的问题是我有一个recyclerview来显示用户的近期活动,在手机中,我已经垂直显示了近期的活动,但是在android电视中,我们有更大的宽度然后是高度,所以我想水平显示最近的活动,我尝试了很多解决方案,例如
<android.support.v7.widget.RecyclerView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
tools:orientation="horizontal" tools:layoutManager="android.support.v7.widget.LinearLayoutManager" />
但是它仍然垂直显示,我不知道为什么。 我还尝试在ScrollView中添加recyclerview,但仍然无法正常工作。也许我在Java中声明了LinearLayoutManager,这就是为什么它以垂直格式显示的原因。
我使reclerview膨胀的片段代码
View view=inflater.inflate(R.layout.recent_activity_tab1_recycler_view, container, false);
RecyclerView recent_activity_list = (RecyclerView) view.findViewById(R.id.recent_activity_list);
recent_activity_list.setLayoutManager(new LinearLayoutManager(getActivity()));
答案 0 :(得分:1)
请勿在此处指定方向。而不是使用布局管理器来设置recyclerView的方向。
例如
LinearLayoutManager layoutManager
= new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
第一个参数是上下文,第二个是方向,第三个是reverseLayout。
您可以在此处更改方向。
答案 1 :(得分:0)
尝试替换此行
recent_activity_list.setLayoutManager(new LinearLayoutManager(getActivity()));
与此行
recent_activity_list.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false));