Android 将不显示LinearLayout中的第三个RecyclerView
我在一个线性布局中有3个RecyclerViews。我的目标是依次显示所有这些,所以第一个ReCielVIEW在顶部,第二个回收视图在中间,第三个回收视图在底部。 但是第三个RecyclerView没有出现在屏幕上。在以下内容中,您可以看到我的文件:Android 将不显示LinearLayout中的第三个RecyclerView,android,android-recyclerview,android-linearlayout,Android,Android Recyclerview,Android Linearlayout,我在一个线性布局中有3个RecyclerViews。我的目标是依次显示所有这些,所以第一个ReCielVIEW在顶部,第二个回收视图在中间,第三个回收视图在底部。 但是第三个RecyclerView没有出现在屏幕上。在以下内容中,您可以看到我的文件: // GroupsScreenActivity.java public class GroupsScreenActivity extends AppCompatActivity { private RecyclerView recycle
// GroupsScreenActivity.java
public class GroupsScreenActivity extends AppCompatActivity {
private RecyclerView recyclerViewGoldenGroup;
private RecyclerView recyclerViewSilverGroup;
private RecyclerView recyclerViewBronceGroup;
private GoldenRecyclerViewAdapter goldenGroupRecyclerViewAdapter;
private SilverGroupRecyclerViewAdapter silverGroupRecyclerViewAdapter;
private BronceRecyclerViewAdapter bronceGroupRecyclerViewAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_groups_screen);
// get a reference to the golden recyclerView
recyclerViewGoldenGroup = (RecyclerView) findViewById(R.id.rvGoldenGroup);
// create the adapter
goldenGroupRecyclerViewAdapter = new GoldenRecyclerViewAdapter(getSampleArrayList());
// create the LinearLayoutManager
LinearLayoutManager goldenLayoutManager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.HORIZONTAL, false);
// set the LayoutManager
recyclerViewGoldenGroup.setLayoutManager(goldenLayoutManager);
// set the adapter
recyclerViewGoldenGroup.setAdapter(goldenGroupRecyclerViewAdapter);
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
// get a reference to the silver RecyclerView
recyclerViewSilverGroup = (RecyclerView) findViewById(R.id.rvSilverGroup);
// create the adapter
silverGroupRecyclerViewAdapter = new SilverGroupRecyclerViewAdapter(getSampleArrayList());
// create the LinearLayoutManager
LinearLayoutManager silverLayoutManager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.HORIZONTAL, false);
// set the LayoutManager
recyclerViewSilverGroup.setLayoutManager(silverLayoutManager);
// set the adapter
recyclerViewSilverGroup.setAdapter(silverGroupRecyclerViewAdapter);
////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////
// get the reference to the bronce RecyclerView
recyclerViewBronceGroup = (RecyclerView) findViewById(R.id.rvBronceGroup);
// create the adapter
bronceGroupRecyclerViewAdapter = new BronceRecyclerViewAdapter(getSampleArrayList());
// create the LayoutManager
LinearLayoutManager bronceLayoutManager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.HORIZONTAL, false);
// set the LayoutManager
recyclerViewBronceGroup.setLayoutManager(bronceLayoutManager);
// set the adapter
recyclerViewSilverGroup.setAdapter(bronceGroupRecyclerViewAdapter);
}
private ArrayList<Object> getSampleArrayList() {
ArrayList<Object> items = new ArrayList<>();
items.add(new User("Dany Targaryen", "Valyria"));
items.add(new User("Rob Stark", "Winterfell"));
items.add("image");
items.add(new User("Jon Snow", "Castle Black"));
items.add("image");
items.add(new User("Tyrion Lanister", "King's Landing"));
return items;
}
}
//GroupsScreenActivity.java
公共类GroupsScreenActivity扩展了AppCompatActivity{
私人RecyclerView recyclerViewGoldenGroup;
私人RecyclerView recyclerViewSilverGroup;
私人回收集团;
私人GoldenRecycleServiceAdapter GoldenGroupRecycleServiceAdapter;
私有SilverGroupRecycleServiceAdapter SilverGroupRecycleServiceAdapter;
私用青铜器循环使用适配器青铜器组循环使用适配器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u groups\u屏幕);
//获取黄金回收视图的参考
recyclerViewGoldenGroup=(RecyclerView)findViewById(R.id.rvGoldenGroup);
//创建适配器
goldengroupRecycleServiceAdapter=新的goldenRecycleServiceAdapter(getSampleArrayList());
//创建LinearLayoutManager
LinearLayoutManager goldenLayoutManager=新的LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false);
//设置布局管理器
RecycleServiceWgoldEnGroup.setLayoutManager(goldenLayoutManager);
//设置适配器
setAdapter(GoldenGroupRecycleServiceAdapter);
///////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////
//获取银回收视图的参考
recyclerViewSilverGroup=(RecyclerView)findViewById(R.id.rvSilverGroup);
//创建适配器
SilverGroupRecycleServiceAdapter=新的SilverGroupRecycleServiceAdapter(getSampleArrayList());
//创建LinearLayoutManager
LinearLayoutManager silverLayoutManager=新的LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false);
//设置布局管理器
setLayoutManager(silverLayoutManager);
//设置适配器
setAdapter(SilverGroupRecycleServiceAdapter);
////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////
//获取bronce RecyclerView的引用
recyclerViewBronceGroup=(RecyclerView)findViewById(R.id.rvBronceGroup);
//创建适配器
BronceGroupRecycleServiceAdapter=新的BronceRecycleServiceAdapter(getSampleArrayList());
//创建布局管理器
LinearLayoutManager BroncelLayoutManager=新的LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false);
//设置布局管理器
recyclerViewBronceGroup.setLayoutManager(bronceLayoutManager);
//设置适配器
setAdapter(BronceGroupRecycleServiceAdapter);
}
私有ArrayList getSampleArrayList(){
ArrayList items=新建ArrayList();
添加(新用户(“Dany Targaryen”、“Valyria”);
添加(新用户(“Rob Stark”、“冬城”);
项目。添加(“图像”);
添加(新用户(“乔恩·斯诺”、“黑城堡”);
项目。添加(“图像”);
添加(新用户(“提利昂·拉尼斯特”、“国王登陆”);
退货项目;
}
}
在下面,您可以看到布局文件。这包括一个带有垂直线性布局的ConstraintLayout,该布局有3个RecyclerViews作为其子级:
<android.support.constraint.ConstraintLayout
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=".GroupsScreen">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.RecyclerView
android:id="@+id/rvGoldenGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rvSilverGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rvBronceGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
</android.support.constraint.ConstraintLayout>
在此对话框中,将BronceAdapter设置为SilverRecyclerView
recyclerViewSilverGroup.setAdapter(bronceGroupRecyclerViewAdapter);
将RecyclerView
更换为青铜色,应能正常工作
希望能有所帮助。您已将BronceAdapter设置为SilverRecyclerView
recyclerViewSilverGroup.setAdapter(bronceGroupRecyclerViewAdapter);
将RecyclerView
更换为青铜色,应能正常工作
希望有帮助。替换布局的以下部分
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="3"
xmlns:android="http://schemas.android.com/apk/res/android">
<android.support.v7.widget.RecyclerView
android:id="@+id/rvGoldenGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/rvSilverGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rvBronceGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp" />
</LinearLayout>
替换布局的以下部分
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="3"
xmlns:android="http://schemas.android.com/apk/res/android">
<android.support.v7.widget.RecyclerView
android:id="@+id/rvGoldenGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/rvSilverGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rvBronceGroup"
android:layout_width="match_parent"
android:layout_weight="1"
android:layout_height="0dp" />
</LinearLayout>