java - Android 中如何将两个不同的列表合并为一个列表

标签 java android realm

我有一个我喜欢从 json 文件显示的城市列表。我还有两个项目,“新城市”,“最喜欢的城市”。还有“新城市”和“最喜欢的城市”前面的两张图片。

我的问题是如何在一个 Activity 中将两个不同的列表组合在一起。谢谢。

// Load from file "cities.json" first time
if (mAdapter == null) {
    List<City> cities = null;
    try {
        cities = loadCities();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // This is the GridView adapter
    ListAdapter = new CityAdapter(this);
    ListAdapter.setData(cities);
}

最佳答案

如果您想连接两个列表,请按以下方法操作

List<City> cities = loadCities();
cities.addAll(loadFavoriteCities);
ListAdapter.setData(cities);

如果您想在一个 Activity 中相邻地显示两个不同的列表,则使用两个 ListViewRecyclerView 是解决方案;

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" 
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
android:orientation="horizontal">

    <ListView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/list1"/>

    <ListView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/list2"/>
</LinearLayout>

关于java - Android 中如何将两个不同的列表合并为一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34010785/

相关文章:

java - DatePickerDialog 按钮不显示标签

Android WebView : Intercept redirect requests?

java - 如何在 androidTest 运行时发送模拟位置坐标?

android - 做Realm Migration Android的正确方法

java - 对象不是此 Realm 的架构的一部分

ios - 为什么我的 Realm 数据库这么大?

java - spring-boot application.properties 中的环境变量错误

java - Dockerfile & 安装 -> Package 'openjdk-8-jre-headless' has no installation candidate

java - 在 Java 中记录一个没有转义 "less than"的 HREF

java - 使用正则表达式验证美国电话号码格式