Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.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
Android 如何通过supportLibrary向recyclerView添加页脚_Android_Android Arrayadapter_Android Recyclerview - Fatal编程技术网

Android 如何通过supportLibrary向recyclerView添加页脚

Android 如何通过supportLibrary向recyclerView添加页脚,android,android-arrayadapter,android-recyclerview,Android,Android Arrayadapter,Android Recyclerview,我试过很多例子,但没有一个合适的。请看一下我的代码。在onCreateViewHolder中,我有一个错误 错误:(64,17)错误:名称冲突:MyAdapter中的onBindViewHolder(ViewHolder,int)和Adapter中的onBindViewHolder(VH,int)具有相同的擦除,但两者都不重写另一个 其中VH是一个类型变量: VH扩展类适配器中声明的ViewHolder 及 错误:(51,36)错误:MyAdapter中的onCreateViewHolder(V

我试过很多例子,但没有一个合适的。请看一下我的代码。在onCreateViewHolder中,我有一个错误

错误:(64,17)错误:名称冲突:MyAdapter中的onBindViewHolder(ViewHolder,int)和Adapter中的onBindViewHolder(VH,int)具有相同的擦除,但两者都不重写另一个 其中VH是一个类型变量: VH扩展类适配器中声明的ViewHolder

错误:(51,36)错误:MyAdapter中的onCreateViewHolder(ViewGroup,int)无法覆盖适配器中的onCreateViewHolder(ViewGroup,int) 返回类型ViewHolder与MyViewHolder不兼容 其中VH是一个类型变量: VH扩展类适配器中声明的ViewHolder

公共类MyAdapter扩展了RecyclerView.Adapter{ ArrayList数据集; 公共静态最终整数模式_DATA=0; 公共静态最终int模式_加载=1; 公共静态类MyViewHolder扩展了RecyclerView.ViewHolder{ 公共文本视图mTextView; 公共文本视图mTextView2; 公共MyViewHolder(视图v){ 超级(五); mTextView=(TextView)itemView.findViewById(R.id.TextView); mTextView2=(TextView)itemView.findViewById(R.id.textView2); } } 公共静态类MyLoadingViewHolder扩展了RecyclerView.ViewHolder{ 公共MyLoadingViewHolder(视图v){ 超级(五); } } @凌驾 public int getItemViewType(int位置){ 如果(位置==数据集大小()-1){ 返回模式加载; }否则{ 返回模式_数据; } } 公共MyAdapter(ArrayList数据集){ 数据集=数据集; } @凌驾 public RecyclerView.ViewHolder onCreateViewHolder(视图组父级,int-viewType){ if(viewType==模式\加载){ 视图v=LayoutInflater.from(parent.getContext()).flate(R.layout.progress\u bar,parent,false); MyLoadingViewHolder loadingViewHolder=新MyLoadingViewHolder(v); 返回加载视图保持器; }否则{ 视图v=LayoutInflater.from(parent.getContext()).flate(R.layout.my_text_视图,parent,false); MyViewHolder MyViewHolder=新的MyViewHolder(v); 返回myViewHolder; } } @凌驾 BindViewHolder上的公共无效(RecyclerView.ViewHolder,int位置){ 如果(位置==模式\加载){ //什么都不做,只显示进度条 } 否则{ ((MyViewHolder)holder.mTextView.setText(dataset_.get(position)); ((MyViewHolder)holder.mTextView2.setText(dataset.get(position)); } } @凌驾 public int getItemCount(){ 返回数据集μ.size(); } } 我的进度条

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

<ProgressBar
    android:id="@+id/progress_bar"
    style="?android:attr/progressBarStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:visibility="visible" />

</RelativeLayout>

使用
RecyclerView.ViewHolder
作为适配器类的通用参数。 如果希望适配器支持多种视图类型,则需要将所有ViewHolder的超类指定为泛型参数


让我们看一下更多的想法——它展示了如何通过在单独的类中提取所有绑定/视图创建逻辑,使适配器更易于维护。在这种情况下,适配器的唯一职责是管理它配置为使用的ViewHolder委托。

使用
RecyclerView.ViewHolder
作为适配器类的通用参数。 如果希望适配器支持多种视图类型,则需要将所有ViewHolder的超类指定为泛型参数

让我们看一下更多的想法——它展示了如何通过在单独的类中提取所有绑定/视图创建逻辑,使适配器更易于维护。在这种情况下,适配器的唯一职责是管理配置为使用的ViewHolder代理

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

<ProgressBar
    android:id="@+id/progress_bar"
    style="?android:attr/progressBarStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:visibility="visible" />

</RelativeLayout>