MapView在Dialog中显示较暗的地图 [英] MapView is showing Darker map inside Dialog

查看:172
本文介绍了MapView在Dialog中显示较暗的地图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在对话框窗口中显示谷歌地图。对于这个对话框,我使用下面的代码行:

 最后的对话框对话框= new Dialog(SetProfileOnlineActivity.this); 
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setCanceledOnTouchOutside(false);
dialog.setCancelable(false);
dialog.setContentView(R.layout.pick_location_layout);
Window w = dialog.getWindow();
w.setLayout(WindowManager.LayoutParams.MATCH_PARENT,WindowManager.LayoutParams.MATCH_PARENT);
dialog.show();

pick_location_layout.xml

 <?xml version =1.0encoding =utf-8?> 
< android.support.constraint.ConstraintLayout xmlns:android =http://schemas.android.com/apk/res/android
xmlns:app =http://schemas.android .com / apk / res-auto
xmlns:tools =http://schemas.android.com/tools
android:layout_width =match_parent
android:layout_height = match_parent>


< com.google.android.gms.maps.MapView
android:id =@ + id / mapview
android:layout_width =0dp
android:layout_height =0dp
app:layout_constraintBottom_toTopOf =@ + id / myLl
app:layout_constraintEnd_toEndOf =parent
app:layout_constraintStart_toStartOf =parent
app:layout_constraintTop_toTopOf =父母
/>

< LinearLayout
android:id =@ + id / ll_map_search
android:layout_width =match_parent
android:layout_height =wrap_content
app:layout_constraintEnd_toEndOf =parent
app:layout_constraintStart_toStartOf =parent
app:layout_constraintTop_toTopOf =parent
android:layout_marginEnd =8dp
android:layout_marginStart = 8dp
android:layout_marginTop =8dp
android:background =@ color / white
android:orientation =horizo​​ntal
>
< EditText
android:id =@ + id / et_search_text
android:layout_width =0dp
android:layout_height =wrap_content hint =Search
android:padding =8dp
android:layout_weight =1
android:textColor =@ color / black
android:textSize = 18sp
android:maxLines =1
android:background =@ android:color / transparent
/>
android:id =@ + id / ib_search_map
android:layout_width =40dp
android:layout_height =40dp scaleType =fitCenter
android:src =@ drawable / search
/>
< / LinearLayout>

< LinearLayout
android:id =@ + id / myLl
android:layout_width =match_parent
android:layout_height =wrap_content
app:layout_constraintBottom_toBottomOf =parent>

现在我的问题是我的地图显示较暗。我也在显示完美的对话框中显示edittext,但是map只是图像中显示较暗的组件。那么,有什么方法可以让mapview像其他组件一样变得更明亮吗?


<对于 mapView解决方案

对话框中正在移除背景暗淡(为您的代码调整,只需粘贴在 dialog.show() code $):

  w.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); 

不好的部分是我在 5年前的问题

以前的回答



我刚刚用 new map 解决方案进行了检查(阅读更多这里):

 < fragment 
android:id =@ + id / map
android:name =com.google.android.gms.maps.SupportMapFragment
app:mapType =正常
android:layout_width =match_parent
android:layout_height =match_parent/>

并且它显示明亮的 - 图像在这里 -


I am trying to display google map inside dialog window. For this dialog i am using following lines of code:

final Dialog dialog = new Dialog(SetProfileOnlineActivity.this);
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        dialog.setCanceledOnTouchOutside(false);
        dialog.setCancelable(false);
        dialog.setContentView(R.layout.pick_location_layout);
        Window w = dialog.getWindow();
        w.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT);
        dialog.show();

pick_location_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <com.google.android.gms.maps.MapView
        android:id="@+id/mapview"
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintBottom_toTopOf="@+id/myLl"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        />

    <LinearLayout
        android:id="@+id/ll_map_search"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:background="@color/white"
        android:orientation="horizontal"
        >
        <EditText
            android:id="@+id/et_search_text"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:hint="Search"
            android:padding="8dp"
            android:layout_weight="1"
            android:textColor="@color/black"
            android:textSize="18sp"
            android:maxLines="1"
            android:background="@android:color/transparent"
             />
        <ImageButton
            android:id="@+id/ib_search_map"
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:scaleType="fitCenter"
            android:src="@drawable/search"
            />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/myLl"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:layout_constraintBottom_toBottomOf="parent">

        <Button
            android:id="@+id/btn_map_cancel"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:background="@color/red"
            android:text="Cancel"
            android:textColor="@color/white"
            android:textSize="@dimen/_18sdp" />

        <Button
            android:id="@+id/btn_map_ok"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:background="@color/green"
            android:text="Ok"
            android:textColor="@color/white"
            android:textSize="@dimen/_18sdp" />
    </LinearLayout>

    <Button
        android:id="@+id/btn_switch_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:text="Switch View"
        app:layout_constraintBottom_toTopOf="@+id/myLl"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent" />


</android.support.constraint.ConstraintLayout>

Now my problem is that my map is showing darker. I am also displaying edittext in dialog which is showing perfectly but map is only component which is showing darker as shown in image. So, is there any way to make mapview brighter as other components?

解决方案

Update for MapView

Solution for mapView in dialog is removing background dim like this (adjusted for your code, just paste before dialog.show()):

        w.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);

Bad part is I've found this solution in 5 year old question

Previous answer

I've just checked with "newer map" solution (read more here):

<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    app:mapType="normal"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

and it shows bright --image was here--

这篇关于MapView在Dialog中显示较暗的地图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆