Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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 如何向RecyclerView显示嵌套HashMap对象?_Android_Hashmap_Android Recyclerview - Fatal编程技术网

Android 如何向RecyclerView显示嵌套HashMap对象?

Android 如何向RecyclerView显示嵌套HashMap对象?,android,hashmap,android-recyclerview,Android,Hashmap,Android Recyclerview,我有一个习惯尝试向RecyclerView显示数据。实际上,我想将3个不同的对象从不同的HashMap显示到一个RecyclerView,但如果我知道如何使用1,它可能会得到如何使用1 json的格式我必须使用HashMaps。过来看 在您使用的地方,可以看到圆形的颜色,这是我需要的数据 现在我不知道我是否把模型类弄错了,但是下面是它们,它们可以工作,因为我可以得到正确的数据显示在日志文件中,我只是不知道如何将其放入回收器视图我删除了模型类电影类中的一些信息,因为你可以看到它们并不重要,只会使

我有一个习惯尝试向RecyclerView显示数据。实际上,我想将3个不同的对象从不同的HashMap显示到一个RecyclerView,但如果我知道如何使用1,它可能会得到如何使用1

json的格式我必须使用HashMaps。过来看 在您使用的地方,可以看到圆形的颜色,这是我需要的数据

现在我不知道我是否把模型类弄错了,但是下面是它们,它们可以工作,因为我可以得到正确的数据显示在日志文件中,我只是不知道如何将其放入回收器视图我删除了模型类电影类中的一些信息,因为你可以看到它们并不重要,只会使页面变长

public class Movie implements Parcelable {

@SerializedName("pid")
String movieId;

@SerializedName("idioma")
HashMap<String, MovieLanguage> movielanguages;

public Movie() {
}

public Movie(String movieId, HashMap<String, MovieLanguage> movielanguages) {
    this.movieId = movieId;

    this.movielanguages = movielanguages;
}


public String getMovieId() {
    return movieId;
}


public void setMovieId(String movieId) {
    this.movieId = movieId;
}




public HashMap<String, MovieLanguage> getMovieLanguage() {
    return movielanguages;
}
public void setMovieLanguage(HashMap<String, MovieLanguage> movielanguages) {
    this.movielanguages = movielanguages;
}
下面是我在活动中使用的代码,用于获取需要显示的正确信息的日志。我只需要有人指出/帮助我正确的方向,以便在回收视图中显示它们

for (Map.Entry<String, MovieLanguage> entry : mymovie.getMovieLanguage().entrySet()){
        HashMap<String, MovieFormat> movieformatw = entry.getValue().getMovieFormat();

        for (Map.Entry<String, MovieFormat> entry2 : movieformatw.entrySet()) {
            HashMap<String, MovieDate> moviedatesw = entry2.getValue().getMovieDate();


        Log.d("Header", entry.getKey()+ " " + entry2.getKey());


            for (Map.Entry<String, MovieDate> entry3 : moviedatesw.entrySet()){
                HashMap<String, MovieFunction> moviefunctionsw = entry3.getValue().getMovieFunction();

                if(entry3.getKey().contains(today)){
                    // checks if date is today and display data


                    for(Map.Entry<String, MovieFunction> entry4 : moviefunctionsw.entrySet()){



                        Log.d("movietimes ",  "" + entry4.getValue().getFunctionTime());


                    }


                }
                else{

                    // there are currently no movie for today do nothing

                }


            }

        }

    }

也许这个图书馆对你有帮助。也许这个图书馆对你有帮助。
public class MovieFormat implements Parcelable {

@SerializedName("fechas")
HashMap<String, MovieDate> moviedates;


public HashMap<String, MovieDate> getMovieDate() {
    return moviedates;
}
public void setMovieDate(HashMap<String, MovieDate> moviedates) {
    this.moviedates = moviedates;
}
public class MovieFunction implements Parcelable {


@SerializedName("session-status")
String functionStatus;
@SerializedName("session-time")
String functionTime;



public String getFunctionStatus() {
    return functionStatus;
}


public void setFunctionStatus(String functionStatus) {
    this.functionStatus = functionStatus;
}

public String getFunctionTime() {
    return functionTime;
}


public void setFunctionTime(String functionTime) {
    this.functionTime = functionTime;
}
for (Map.Entry<String, MovieLanguage> entry : mymovie.getMovieLanguage().entrySet()){
        HashMap<String, MovieFormat> movieformatw = entry.getValue().getMovieFormat();

        for (Map.Entry<String, MovieFormat> entry2 : movieformatw.entrySet()) {
            HashMap<String, MovieDate> moviedatesw = entry2.getValue().getMovieDate();


        Log.d("Header", entry.getKey()+ " " + entry2.getKey());


            for (Map.Entry<String, MovieDate> entry3 : moviedatesw.entrySet()){
                HashMap<String, MovieFunction> moviefunctionsw = entry3.getValue().getMovieFunction();

                if(entry3.getKey().contains(today)){
                    // checks if date is today and display data


                    for(Map.Entry<String, MovieFunction> entry4 : moviefunctionsw.entrySet()){



                        Log.d("movietimes ",  "" + entry4.getValue().getFunctionTime());


                    }


                }
                else{

                    // there are currently no movie for today do nothing

                }


            }

        }

    }
D/header: Subt Spanish DBOX-2D
D/movietimes:  7:00PM
D/movietimes:  9:30PM
D/movietimes:  4:30PM
D/movietimes:  2:00PM
D/header: Subtitulada DBOX-2D
D/movietimes:  7:00PM
D/movietimes:  9:30PM
D/movietimes:  4:30PM
D/movietimes:  2:00PM
D/header: DBOX DBOX-2D
D/movietimes:  7:00PM
D/movietimes:  9:30PM
D/movietimes:  4:30PM
D/movietimes:  2:00PM