MAPS Api v2的自定义信息窗口中的RelativeLayout宽度

时间:2013-08-16 11:16:20

标签: android maps relativelayout android-maps-v2

我有一个Google Maps API v2的自定义信息窗口,该窗口使用通过在我的班级覆盖getInfoWindow添加的RelativeLayout。这个布局有一个TextView,第一行有一个标题,下一行有三个TextView,一个对齐到左边,另一个对齐到中心,第三个对齐到右边。它可以工作,但窗口占据了整个屏幕,这在平板电脑等大屏幕上非常难看。

我试图将RelativeLayout的宽度设置为某个固定值(比如说“50dp”)或“wrap_content”,但它总是占用整个屏幕。

这是布局的XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/bus_stop_info_window"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#ffffffff" >

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:text="A title" >
    </TextView>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/title"
        android:gravity="left"
        android:text="Test1" >
    </TextView>

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/title"
        android:gravity="center"
        android:text="Test2" >
    </TextView>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/title"
        android:gravity="left"
        android:text="Test3" >
    </TextView>

</RelativeLayout>

如何达到预期效果?

2 个答案:

答案 0 :(得分:7)

为了使根元素成为线性布局并将相对布局放入其中。因此该窗口不会在平板电脑中填满整个屏幕。这不会影响相对布局宽度是wrap_content还是固定大小。

你可以试试我的回答here

答案 1 :(得分:0)

检查此链接:

https://stackoverflow.com/a/6168459/2074990

当我不得不缩小RelativeLayout时,

为我工作了!