将谷歌地图高度设置为Android屏幕的80%

时间:2016-03-22 12:14:39

标签: android google-maps

我正在开始一个新的Android应用程序,我使用Android工作室提供的默认模板来创建一个谷歌地图界面,目前我已将高度设置为100dp,但我需要它是屏幕高度的80%。

我不确定Android中的响应式布局,我只需要在地图下方添加一个新的按钮,但目前Google地图的默认模板会占据整个屏幕。

XML布局:     

.actions {
float: left;
margin-top: 9%;
}
ul#shipping-estimation-form {
float: left;
}

4 个答案:

答案 0 :(得分:2)

重量是执行此操作的最佳选择 -

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:map="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="1"
tools:context="com.mapdemo.deepanshu.MapsActivity" >
<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight=".80"/>
<TextView
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight=".20"
    android:background="#22bfb2"
    android:text="Google Map Demo"
    android:textColor="#ffffff"
    android:gravity="center"/>
</LinearLayout>

答案 1 :(得分:0)

您可以使用LinearLayout的weight属性。它的作用就像百分比

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        tools:context=".MapsActivity"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="80" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="20">

        <!-- Empty view. You can put here whatever you want -->

    </FrameLayout>
</LinearLayout>

答案 2 :(得分:0)

您可以通过将权重设置为这样的布局来实现此目的。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:weightSum="1"
    android:orientation="vertical" >

    <!-- Map -->

    <fragment
        android:id="@+id/map_detail"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="0.8"
        class="com.google.android.gms.maps.SupportMapFragment"/>

    <!-- Button -->

    <Button
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="0.2"
            android:text="Text"/>

</LinearLayout>

答案 3 :(得分:0)

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    tools:context=".MapsActivity"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="80" />

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="0dp"
    android:layout_weight="20">
</RelativeLayout>
</LinearLayout>