android listview mapview布局问题

标签 android listview layout toggle android-mapview

我想要一个布局,以便用户可以在 ListView 和 map View 之间切换以及单击菜单按钮。首次创建 Activity 时,它会从服务器获取数据并显示列表结果,然后单击菜单按钮将所有结果映射到 mapview 上。 我遇到的问题是在用户单击刷新结果菜单按钮后最初和再次显示加载屏幕。 我的布局如下, Activity 扩展了 MapActivity。当调用 notifyDataSetInvalidated() 时列表数据可用时,我希望加载 View 消失。我在没有 mapview 的其他 Activity 中使用了类似的逻辑,并且 Activity 扩展了列表 Activity 并且它有效但在这种情况下无效。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:orientation="vertical"
    >
    <LinearLayout 
        android:id="@+id/data_view"
        android:layout_width="fill_parent"
        android:layout_height="0dip" 
        android:layout_weight="1"
        >
        <ListView 
            android:id="@android:id/list"
            android:layout_height="fill_parent" 
            android:layout_width="fill_parent"
            android:drawSelectorOnTop="false"
            android:scrollbars="vertical" 
            />
        <com.google.android.maps.MapView
            android:id="@+id/map_view"
            android:layout_height="fill_parent" 
            android:layout_width="fill_parent"
            android:clickable="true" 
            android:visibility="gone"
            android:apiKey="@string/google_maps_api_key"
            />
    </LinearLayout> 
    <LinearLayout
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:gravity="center"
      android:background="@color/white"
      >
      <ProgressBar
        android:id="@+id/emptyProgress"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginRight="6dip"
        style="?android:attr/progressBarStyleSmall" 
        />
      <TextView
        android:id="@+id/emptyText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="@string/loading" 
        />
    </LinearLayout>
</LinearLayout>

最佳答案

我决定使用 FrameLayout 并根据要显示的内容在这 3 个 View 之间切换。

关于android listview mapview布局问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4652127/

相关文章:

android - 我需要将我的商品详情翻译成地区指定的语言吗?

android - 我如何在android中的listview中实现分页?

html - z-index 和嵌套的 DOM 元素(堆叠上下文)叠加

c - 内存布局的.text区域

java - FragmentPagerAdapter android.support.v4.app.fragment 无法应用于 android.ap.Fragment

android - 适用于 Android 的 HTML5 中的视频和音频标签

java - 在 Android Studio 中恢复文件?

java - 从 SQLite 填充联系人 ListView - 不显示联系人

Android:如何在 Youtube 应用程序中创建时尚的 ListView

android - 如何在显示软键盘时保持所有字段和文本可见