Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java “我的回收者”视图没有';如果无法显示它的所有项目,如何修复它?_Java_Android_Android Layout_Android Recyclerview - Fatal编程技术网

Java “我的回收者”视图没有';如果无法显示它的所有项目,如何修复它?

Java “我的回收者”视图没有';如果无法显示它的所有项目,如何修复它?,java,android,android-layout,android-recyclerview,Java,Android,Android Layout,Android Recyclerview,我的recyclerView有点问题。它不会显示所有项目。例如,recyclerView有12个项目,但它显示了10个项目和半个项目。我可以为它设置paddingBottom,它可以显示所有项目,但我认为这不是一个好方法。我怎样才能修好它?我想可能是因为我上面的纽扣 acctivity_search_coin.xml <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayo

我的recyclerView有点问题。它不会显示所有项目。例如,recyclerView有12个项目,但它显示了10个项目和半个项目。我可以为它设置paddingBottom,它可以显示所有项目,但我认为这不是一个好方法。我怎样才能修好它?我想可能是因为我上面的纽扣

acctivity_search_coin.xml

<?xml version="1.0" encoding="utf-8"?>
<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">


    <android.support.v7.widget.RecyclerView
        android:id="@+id/recyclerView2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dp"
        android:paddingBottom="50dp"
        app:layout_constraintTop_toBottomOf="@+id/lianerForThreeBtn" />

    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginEnd="8dp"
        android:background="#FFFFFF"
        android:paddingStart="5dp"
        android:paddingEnd="5dp"
        android:textSize="15sp"
        android:drawablePadding="6dp"
        android:gravity="center_vertical"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <LinearLayout
        android:id="@+id/lianerForThreeBtn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintTop_toBottomOf="@+id/button2">

        <Button
            android:id="@+id/btn1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:background="#FFFFFF"
            android:layout_weight="1"/>
        <Button
            android:id="@+id/btn2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:background="#FFFFFF"
            android:layout_weight="1"/>
        <Button
            android:id="@+id/btn3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:background="#FFFFFF"
            android:layout_weight="1"/>

    </LinearLayout>

</android.support.constraint.ConstraintLayout>

活动\u回收器\u视图\u适配器\u硬币\u列表.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/recyclerImage"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp">

    <TextView
        android:id="@+id/denominationTV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_marginStart="20dp"
        android:layout_marginEnd="8dp"
        android:layout_toEndOf="@+id/secondIV"
        android:textSize="20sp" />

    <TextView
        android:id="@+id/yearTV"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/denominationTV"
        android:layout_alignStart="@+id/denominationTV"
        android:layout_alignParentEnd="true"
        android:layout_marginStart="0dp"
        android:layout_marginTop="6dp"
        android:layout_marginEnd="8dp"
        android:textSize="20sp" />

    <ImageView
        android:id="@+id/firstIV"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_alignParentStart="true"
        android:layout_marginStart="0dp"/>


    <ImageView
        android:id="@+id/secondIV"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:layout_marginStart="4dp"
        android:layout_toEndOf="@+id/firstIV"/>

</RelativeLayout>

RecycleServiceAdapterCoinList.java

public class RecyclerViewAdapterCoinList extends RecyclerView.Adapter<RecyclerViewAdapterCoinList.ViewHolder> {

    private List<String> mYearList;
    private List<String> mDenominationList;
    private  List<String> mImageList1;
    private  List<String> mImageList2;
    private LayoutInflater mInflater;
    private ItemClickListener mClickListener;
    Context context;

    RecyclerViewAdapterCoinList(Context context, List<String> denominationList,List<String> yearList, List<String> imageList1,List<String> imageList2) {
        this.mInflater = LayoutInflater.from(context);
        this.mYearList = yearList;
        this.mDenominationList = denominationList;
        this.mImageList1 = imageList1;
        this.mImageList2 = imageList2;
        this.context = context;
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = mInflater.inflate(R.layout.activity_recycler_view_adapter_coin_list, parent, false);
        return new ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        String year = mYearList.get(position);
        String denomination = mDenominationList.get(position);
        String imageString1 = mImageList1.get(position);
        String imageString2 = mImageList2.get(position);
        holder.denominationTV.setText(denomination);
        holder.yearTV.setText(year);

        try {
            Glide.with(context).load(imageString1).into(holder.firstIV);
            Glide.with(context).load(imageString2).into(holder.secondIV);
        }catch (Exception e){e.printStackTrace();}


    }

    // total number of rows
    @Override
    public int getItemCount() {
        return mDenominationList.size();
    }


    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
        TextView denominationTV;
        TextView yearTV;
        ImageView firstIV;
        ImageView secondIV;

        ViewHolder(View itemView) {
            super(itemView);
            denominationTV = itemView.findViewById(R.id.denominationTV);
            yearTV = itemView.findViewById(R.id.yearTV);
            firstIV = itemView.findViewById(R.id.firstIV);
            secondIV = itemView.findViewById(R.id.secondIV);
            itemView.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            if (mClickListener != null) mClickListener.onItemClick(view, getAdapterPosition());
        }
    }

    String getItem(int id) {
        return mDenominationList.get(id);
    }

    void setClickListener(ItemClickListener itemClickListener) {
        this.mClickListener = itemClickListener;
    }

    public interface ItemClickListener {
        void onItemClick(View view, int position);
    }
}
公共类RecycleServiceAdapterCoinList扩展了RecycleView.Adapter{
私人名单;
私有列表mDenominationList;
私有列表mImageList1;
私有列表mImageList2;
私人停车场;
私有项ClickListener McClickListener;
语境;
RecycleServiceAdapterCoinList(上下文上下文、列表名称列表、列表年份列表、列表图像列表1、列表图像列表2){
this.mInflater=LayoutInflater.from(上下文);
this.mYearList=年鉴;
this.mDenominationList=面额列表;
this.mImageList1=imageList1;
this.mImageList2=imageList2;
this.context=上下文;
}
@凌驾
public ViewHolder onCreateViewHolder(视图组父级,int-viewType){
视图=最小充气器。充气(R.layout.activity\u recycler\u View\u adapter\u coin\u list,parent,false);
返回新的ViewHolder(视图);
}
@凌驾
公共无效onBindViewHolder(ViewHolder,int位置){
字符串year=mYearList.get(位置);
字符串命名=mDenominationList.get(位置);
字符串imageString1=mImageList1.get(位置);
字符串imageString2=mImageList2.get(位置);
持有者.面额tv.setText(面额);
holder.yearTV.setText(年份);
试一试{
使用(上下文)滑动。加载(imageString1)。放入(holder.firstIV);
使用(上下文)滑动。加载(imageString2)。放入(holder.secondIV);
}catch(异常e){e.printStackTrace();}
}
//总行数
@凌驾
public int getItemCount(){
返回mDenominationList.size();
}
公共类ViewHolder扩展了RecyclerView.ViewHolder实现了View.OnClickListener{
文本视图命名电视;
TextView yearTV;
ImageView firstIV;
ImageView第二版;
ViewHolder(视图项视图){
超级(项目视图);
名称TV=itemView.findViewById(R.id.DenominionTV);
yearTV=itemView.findviewbyd(R.id.yearTV);
firstIV=itemView.findviewbyd(R.id.firstIV);
secondIV=itemView.findviewbyd(R.id.secondIV);
setOnClickListener(这个);
}
@凌驾
公共void onClick(视图){
if(mClickListener!=null)mClickListener.onItemClick(视图,getAdapterPosition());
}
}
字符串getItem(int-id){
返回mDenominationList.get(id);
}
void setClickListener(项ClickListener项ClickListener){
this.mClickListener=itemClickListener;
}
公共接口项ClickListener{
void onItemClick(视图,int位置);
}
}

尝试在回收器视图中添加
应用程序:布局约束Bottom\u toBottomOf=“parent”
,并将回收器视图的高度设置为0dp(匹配约束)。

我想你在回收器视图中缺少
应用程序:布局约束Bottom
,你能试试吗?我真的错过了,谢谢