Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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 点击带有url的“更多”按钮加载更多recyclerview项目_Android_Kotlin_Android Recyclerview_Retrofit2_Rx Java2 - Fatal编程技术网

Android 点击带有url的“更多”按钮加载更多recyclerview项目

Android 点击带有url的“更多”按钮加载更多recyclerview项目,android,kotlin,android-recyclerview,retrofit2,rx-java2,Android,Kotlin,Android Recyclerview,Retrofit2,Rx Java2,我正在使用改装来显示recyclerview项目。起初只有两个项目是可见的,但单击ShowMore按钮,我试图用api加载其余的项目 我的方法是添加更多带有url的项目,但无法确定我的方式是否正确 我能够显示开始2个项目,从后端,我在nextComments标签中得到一个url。在api调用方法中将此url作为参数传递。试图找出下一种方法 Api.getReplies(nextUrl.toString()) .observeOn(AndroidSchedulers.mainThr

我正在使用改装来显示recyclerview项目。起初只有两个项目是可见的,但单击ShowMore按钮,我试图用api加载其余的项目

我的方法是添加更多带有url的项目,但无法确定我的方式是否正确

我能够显示开始2个项目,从后端,我在nextComments标签中得到一个url。在api调用方法中将此url作为参数传递。试图找出下一种方法

Api.getReplies(nextUrl.toString())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(
            { result ->
                if (!result.results.isNullOrEmpty()) {
                    nextUrl = result.next.toString()


                    //-------what should be here-----//?
                    replyAdapter.notifyDataSetChanged()
                }
            },
            { error ->
                println(error)
            })

当我单击show more时,这些项目将添加到recyclerview中,这实际上取决于适配器代码的外观,但下面是一个通用示例:

//get the new items from backend
var more_objects = await MyWebService.GetMoreObjects (indexKey);
// add the items to the adapter
_adapter.appendObjects(more_objects);
_adapter.NotifyDataSetChanged ();
在适配器中添加对象:

    public void appendObjects (List<MyObj> obj)
    {
        foreach (var o in obj) {
            data.Add (o);
        }
    }
kotlin中的appendObject

fun appendObjects(obj: List<MyObj>) {
    obj.forEach { 
        data.Add (it); 
    } 
}

将项目添加到数据集之前notifyDataSetChanged@JoachimHaglund任何可以帮助我使用URL添加数据的示例代码都可以在kotlin中显示append方法。这将是有帮助的,非常感谢:补充科特林威龙回答