gpt4 book ai didi

java - 抛出 RecyclerView 后 layout_centerInParent 不工作

转载 作者:行者123 更新时间:2023-11-30 12:04:28 27 4
gpt4 key购买 nike

我正在尝试将另一个 ViewHolder 与相同的 RecyclerView 一起使用,我试图膨胀的布局基本上是 RelativeLyout 和 ProgressBar 作为它的子项。问题是 ProgressBar 有一个属性 CenterInParent="True"在膨胀 Progressbar 保持在屏幕左侧的布局后不起作用,即使在 preView 中显示正确居中屏幕,所以问题似乎与膨胀过程一样,在调试时我没有看到膨胀 View 的任何 centerInParent 属性。

我已经尝试了 LinearLayout 和 ConstraintLayout,我什至尝试设置布局参数,但没有任何效果。我还尝试将膨胀布局的父级更改为相对布局,因为实际父级是回收器 View ,但也没有用。

这是我试图膨胀的 ViewHolder 的布局。

<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ProgressBar
android:layout_width="75dp"
android:layout_height="75dp"
android:layout_centerInParent="true"/>

这是适配器

@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view;
switch (viewType) {
//Case List recipes
case RECIPE_TYPE: {
RecipeItemBinding mRecipeItemBinding = RecipeItemBinding.inflate(
LayoutInflater.from(parent.getContext()), parent, false);
return new MyViewHolder(mRecipeItemBinding, onRecipeClickListener);
}
//Case Loading layout
case LOADING_TYPE: {
view = LayoutInflater.from(parent.getContext()).inflate(
R.layout.layout_loading_list_item, parent, false);
return new LoadingViewHolder(view);
}


public class LoadingViewHolder extends RecyclerView.ViewHolder {
public LoadingViewHolder(@NonNull View itemView) {
super(itemView);
}
}

最佳答案

我已经写了答案希望能帮助别人,我只是弄清楚发生了什么,问题出在 RecyclerView 的宽度上,因为它是 wrap_content,它应该是 match_parent。

关于java - 抛出 RecyclerView 后 layout_centerInParent 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57120741/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com