如何在地图片段API v2布局顶部添加button
我正在尝试使用API v2在android中显示地图。
我想要一些像这样的UI。但是每当我尝试在布局中添加button时,它都不会反映在输出中
我能够得到没有button的地图 。
我需要button来整合像下面的地图
代码为Mylayout.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MapActivity" > <RelativeLayout android:layout_width="match_parent" android:layout_height="48dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <RadioGroup android:id="@+id/radio_group_list_selector" android:layout_width="0dp" android:layout_height="match_parent" android:layout_gravity="center_horizontal|center_vertical" android:gravity="center_horizontal" android:orientation="horizontal" android:layout_weight="1" > <RadioButton android:id="@+id/radioPopular" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/Popular" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton" android:layout_marginBottom="4dp" android:layout_marginTop="4dp" android:layout_marginLeft="4dp" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="wrap_content" android:layout_marginBottom="4dip" android:layout_marginTop="4dip" android:background="#aaa" /> <RadioButton android:id="@+id/radioAZ" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/AZ" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton2" android:layout_marginBottom="4dp" android:layout_marginTop="4dp" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="wrap_content" android:layout_marginBottom="4dip" android:layout_marginTop="4dip" android:background="#aaa" /> <RadioButton android:id="@+id/radioCategory" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/Category" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton2" android:layout_marginBottom="4dp" android:layout_marginTop="4dp" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="wrap_content" android:layout_marginBottom="4dip" android:layout_marginTop="4dip" android:background="#aaa" /> <RadioButton android:id="@+id/radioNearBy" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/NearBy" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton3" android:layout_marginBottom="4dp" android:layout_marginTop="4dp" android:layout_marginRight="4dp" android:textColor="@drawable/textcolor_radiobutton" /> </RadioGroup> </LinearLayout> <!-- For Horizontal Line--> <View android:layout_width="match_parent" android:layout_height="1dip" android:layout_marginLeft="4dip" android:layout_marginRight="4dip" android:background="#aaa" android:layout_alignParentBottom="true"/> </RelativeLayout> <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:map="http://schemas.android.com/apk/res-auto" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:scrollbars="vertical" class="com.google.android.gms.maps.SupportMapFragment"/> </RelativeLayout>
也许一个更简单的解决scheme是使用FrameLayout
或RelativeLayout
在你的地图前面设置一个叠加层,并把它们当作你的活动中的常规button。 您应该按照前面的顺序声明图层,例如button之前的地图。 我修改了你的布局,简化了一下。 尝试以下布局,看看它是否适合你:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MapActivity" > <fragment xmlns:map="http://schemas.android.com/apk/res-auto" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:scrollbars="vertical" class="com.google.android.gms.maps.SupportMapFragment"/> <RadioGroup android:id="@+id/radio_group_list_selector" android:layout_width="match_parent" android:layout_height="48dp" android:orientation="horizontal" android:background="#80000000" android:padding="4dp" > <RadioButton android:id="@+id/radioPopular" android:layout_width="0dp" android:layout_height="match_parent" android:text="@string/Popular" android:gravity="center_horizontal|center_vertical" android:layout_weight="1" android:background="@drawable/shape_radiobutton" android:textColor="@color/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioAZ" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/AZ" android:layout_weight="1" android:background="@drawable/shape_radiobutton2" android:textColor="@color/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioCategory" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/Category" android:layout_weight="1" android:background="@drawable/shape_radiobutton2" android:textColor="@color/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioNearBy" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/NearBy" android:layout_weight="1" android:background="@drawable/shape_radiobutton3" android:textColor="@color/textcolor_radiobutton" /> </RadioGroup> </FrameLayout>
如果这是你想要的…只需在Fragment中添加button。
<fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/map" android:name="com.google.android.gms.maps.SupportMapFragment" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.LocationChooser"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right|top" android:text="Demo Button" android:padding="10dp" android:layout_marginTop="20dp" android:paddingRight="10dp"/> </fragment>
延长德阿尔梅达的答案我在这里编辑代码一点点。 因为以前的代码是隐藏GPS位置图标,我做了以下的方式,更好地工作。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <RadioGroup android:id="@+id/radio_group_list_selector" android:layout_width="match_parent" android:layout_height="48dp" android:orientation="horizontal" android:background="#80000000" android:padding="4dp" > <RadioButton android:id="@+id/radioPopular" android:layout_width="0dp" android:layout_height="match_parent" android:text="@string/Popular" android:gravity="center_horizontal|center_vertical" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioAZ" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/AZ" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton2" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioCategory" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/Category" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton2" android:textColor="@drawable/textcolor_radiobutton" /> <View android:id="@+id/VerticalLine" android:layout_width="1dip" android:layout_height="match_parent" android:background="#aaa" /> <RadioButton android:id="@+id/radioNearBy" android:layout_width="0dp" android:layout_height="match_parent" android:gravity="center_horizontal|center_vertical" android:text="@string/NearBy" android:layout_weight="1" android:button="@null" android:background="@drawable/shape_radiobutton3" android:textColor="@drawable/textcolor_radiobutton" /> </RadioGroup> <fragment xmlns:map="http://schemas.android.com/apk/res-auto" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment" android:scrollbars="vertical" />
- 链接应该在Android的相同的Web视图中打开
- 如何在Android Studio中的文件中search方法
- Android的GCM SENDER_ID,如何得到它?
- 如何从Android应用程序连接到多个Firebase数据库
- 如何使用Google Maps V2删除单个标记?
- 使用Html,Css和JavaScript开发android应用程序
- 在添加标记Google Maps v2 Android时自动打开InfoWindow
- 错误:无法findcom.google.gms:google-services:1.0。 在android studio中添加build.gradle中的谷歌服务插件
- 为什么我的three.js场景中的焦点仍然集中在相机的视angular,但只在Chrome的Android?