Emi*_*Adz 10 android android-layout android-maps-v2
我想给地图一个漂亮的圆角,就像它下面的两个方框一样.我不能用它自己的地图片段来做,因为片段没有背景属性.在布局中设置地图并将其背景设置为圆形也不会对我有帮助,这就是结果:
我可以合并地图,但这会使它变小,我想避免它.
编辑:@Ryan这是新结果#2:
我想这不坏,甚至没有接近其他盒子的角落,但仍然不错,一点点工作可以得到某个地方我只是没有一个正常的图像编辑器.但现在仍然困扰我的一件事是"位置"文本视图和它自己的地图之间的分离.我可以用其他方式画补丁,以便现在有距离吗?这就是我做到的方式:
好吧,我终于弄明白了:
这是我用于修补程序的内容:
谢谢.
Ste*_*hen 21
我知道这是一个旧帖子,但您可以尝试使用这样的卡片:
<android.support.v7.widget.CardView
android:layout_width="300dp"
android:layout_height="350dp"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="20dp"
app:cardCornerRadius="12dp"
app:cardElevation="12dp">
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)
我没试过这个,但是我在mapView/mapFragment的顶部放了一个带圆角和透明中间的视图.
也就是说,将mapFragment和圆角视图放在FrameLayout中,同时填充FrameLayout,然后使圆角视图的中间透明.
为了进一步说明,您可以按如下方式在布局中进行: -
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<fragment
xmlns:map="http://schemas.android.com/apk/res-auto"
android:id="@+id/mapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.MapFragment" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/rounded_background"
android:orientation="vertical" >
</LinearLayout>
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)
rounded_background是一个带有圆角和透明中间的9补丁.例如
希望有所帮助,
瑞安
最简单的方法是将地图片段与 ImageView 一起包装在 FrameLayout 中。Imageview 将在地图片段的顶部显示一个圆角矩形。在最简单的形式中,您将看到圆角矩形内的地图片段,其角伸出圆角矩形,因为地图视图本身不是圆角的。为了克服这种视觉上的奇怪,只需在地图片段上应用 layout_margin 值。该值应等于矩形的边框宽度。
<FrameLayout
android:id="@+id/map_container"
android:layout_width="wrap_content"
android:layout_height="340dp" >
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="3dp"
android:name="com.google.android.gms.maps.SupportMapFragment"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/map_bg_box" />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)
矩形 drawable 被定义为一个 xml 形状,如下所示
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="3dp"
android:color="#ff000000" />
<corners android:bottomRightRadius="7dp" android:bottomLeftRadius="7dp"
android:topLeftRadius="7dp" android:topRightRadius="7dp"/>
</shape>
Run Code Online (Sandbox Code Playgroud)
请注意,矩形的笔触宽度为 3dp,这与我们应用于地图片段的 layout_margin 属性的值完全相同。结果是一个很好的圆角地图片段,如下面的屏幕截图所示
归档时间: |
|
查看次数: |
12908 次 |
最近记录: |