7

アクティビティの 1 つにメイン レイアウトとして LinearLayout があります。Scrollview を使用して LinearLayout をカプセル化しました。レイアウトには、Google マップを表示するフラグメントが含まれていますが、スクロールすると背景が黒くなります。FrameLayout 内で透明な背景を使用して問題を解決しました。黒い背景はなくなりましたが、スクロール中にマップの周りに黒い縁がちらつきます。これを削除するには?Scrollview の背景を白色に設定してみましたが、変化が見られません。

アクティビティの XML は --

<?xml version="1.0" encoding="utf-8"?>
<ScrollView 
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroll"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#FFFFFF"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:baselineAligned="false"
android:orientation="vertical"
android:overScrollMode="ifContentScrolls"
android:scrollbarStyle="insideOverlay"
android:scrollbars="vertical"
android:showDividers="none" >

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="45dp"
    android:background="#ec4d1d" >

    <TextView
        android:id="@+id/friend_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="7dp"
        android:background="@drawable/near_you_bg"
        android:gravity="center_horizontal|center_vertical"
        android:padding="6dp"

        android:textColor="#FFFFFF"
        android:textSize="15sp"
        android:textStyle="bold"
        android:typeface="sans" />

    <Button
        android:id="@+id/btnInviteFriends"
        android:layout_width="30dp"
        android:layout_height="25dp"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:layout_marginRight="7dp"
        android:background="@drawable/menu_bg"
        android:onClick="inviteFriends" />

</RelativeLayout>

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="81dp"
    android:background="@drawable/list_bg"
    android:orientation="vertical" >

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:shrinkColumns="*"
        android:stretchColumns="*" >

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center_vertical|center_horizontal"
            android:layout_marginTop="4dp"
            android:gravity="center_vertical|center_horizontal" >

            <RelativeLayout
                android:layout_width="65dp"
                android:layout_height="70dp" >

                <ImageView
                    android:id="@+id/user_image"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_alignWithParentIfMissing="false"
                    android:layout_centerHorizontal="true"
                    android:layout_centerVertical="true"
                    android:layout_marginTop="7dp"
                    android:src="@drawable/d_bg" />

            </RelativeLayout>

            <RelativeLayout
                android:layout_width="140dp"
                android:layout_height="70dp" >

                <TextView
                    android:id="@+id/name"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="0dp"
                    android:layout_toRightOf="@id/user_image"
                    android:paddingBottom="2dip"
                    android:text="Amrinder"
                    android:textColor="#000000"
                    android:textSize="16sp"
                    android:textStyle="bold" />

                <TextView
                    android:id="@+id/distance"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/name"
                    android:layout_marginTop="2dp"
                    android:layout_toRightOf="@id/user_image"
                    android:text="description"
                    android:textColor="#000000"
                    android:textSize="10sp" >

                </TextView>

                <LinearLayout
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/distance"
                    android:layout_marginTop="7dp"
                    android:orientation="horizontal" >

                    <ImageView
                        android:id="@+id/common_icon"
                        android:layout_width="26dp"
                        android:layout_height="19dp"
                        android:background="@drawable/common_icon" />

                    <TextView
                        android:id="@+id/common_number"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="3dp"
                        android:text="4"
                        android:textColor="#000000"
                        android:textStyle="bold" />

                    <ImageView
                        android:id="@+id/friends_icon"
                        android:layout_width="26dp"
                        android:layout_height="19dp"
                        android:layout_marginLeft="7dp"
                        android:background="@drawable/friends_icon" />

                    <TextView
                        android:id="@+id/friends_number"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="3dp"
                        android:text="5"
                        android:textColor="#000000"
                        android:textStyle="bold" />
                </LinearLayout>

                <TextView
                    android:id="@+id/nearUserInfo"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:visibility="invisible" >
                </TextView>
            </RelativeLayout>

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent" >

                <TextView
                    android:id="@+id/time_ago"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"

                    android:text="10 min ago" 
                    />

                <ImageView
                    android:id="@+id/dir_img"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/time_ago"
                    android:layout_centerHorizontal="true"
                    android:layout_marginTop="23dp"
                    android:background="@drawable/say_hi_button" />

            </RelativeLayout>
        </TableRow>
    </TableLayout>
</RelativeLayout>

<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
>

<ImageView
    android:id="@+id/map_bar"
    android:layout_width="fill_parent"
    android:layout_height="25dip"
    android:layout_centerInParent="false"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/map_box_bg" />


<RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="25dp" >

    <TextView
        android:id="@+id/distance_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="1dp"
        android:text="X is 4 km north-east of you now"
        android:textColor="#ffffff"
        android:textStyle="bold" />

</RelativeLayout>
<FrameLayout
    android:id="@+id/frame_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.MapFragment"
    android:layout_width="fill_parent"
    android:layout_height="150dp"
    android:layout_below="@id/map_bar"

    />
<View
        android:id="@+id/trans_img"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/trans" />         
</FrameLayout>

</RelativeLayout>

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp" >

<ImageView
    android:id="@+id/like_bar"
    android:layout_width="fill_parent"
    android:layout_height="25dip"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/map_box_bg" />

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="25dp" >

    <ImageView
        android:id="@+id/like_button"
        android:layout_width="24dp"
        android:layout_height="23dp"

        android:layout_centerVertical="true"
        android:layout_marginLeft="1dp"
        android:background="@drawable/common_detail_icon" />

    <TextView
        android:id="@+id/likes_in_common"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_toRightOf="@id/like_button"
        android:gravity="center_vertical"
        android:text=" 3 likes in common"
        android:textColor="#FFFFFF"
        android:textStyle="bold" />

    </RelativeLayout>

<ImageView
    android:id="@+id/like_bg"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/like_bar"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/list_bg" />

</RelativeLayout>

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp" >

<ImageView
    android:id="@+id/friends_bar"
    android:layout_width="fill_parent"
    android:layout_height="25dip"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/map_box_bg" />

    <RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="25dp"
    android:layout_alignParentRight="true" >

    <ImageView
        android:id="@+id/friends_button"
        android:layout_width="24dp"
        android:layout_height="23dp"

        android:layout_centerVertical="true"
        android:layout_marginLeft="1dp"
        android:background="@drawable/common_friends_icon" />

    <TextView
        android:id="@+id/friends_in_common"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_toRightOf="@id/friends_button"
        android:gravity="center_vertical"
        android:text=" 9 friends in common"
        android:textColor="#FFFFFF"
        android:textStyle="bold" />

    </RelativeLayout>

<ImageView
    android:id="@+id/friends_bg"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/friends_bar"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/list_bg" />



</RelativeLayout>


<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp" >

<ImageView
    android:id="@+id/friends_bar"
    android:layout_width="fill_parent"
    android:layout_height="25dip"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/map_box_bg" />

    <RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="25dp"
    android:layout_alignParentRight="true" >

    <ImageView
        android:id="@+id/friends_button"
        android:layout_width="24dp"
        android:layout_height="23dp"

        android:layout_centerVertical="true"
        android:layout_marginLeft="1dp"
        android:background="@drawable/common_friends_icon" />

    <TextView
        android:id="@+id/friends_in_common"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_toRightOf="@id/friends_button"
        android:gravity="center_vertical"
        android:text=" 9 friends in common"
        android:textColor="#FFFFFF"
        android:textStyle="bold" />

    </RelativeLayout>

<ImageView
    android:id="@+id/friends_bg"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/friends_bar"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/list_bg" />



</RelativeLayout>



<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp" >

<ImageView
    android:id="@+id/friends_bar"
    android:layout_width="fill_parent"
    android:layout_height="25dip"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/map_box_bg" />

    <RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="25dp"
    android:layout_alignParentRight="true" >

    <ImageView
        android:id="@+id/friends_button"
        android:layout_width="24dp"
        android:layout_height="23dp"

        android:layout_centerVertical="true"
        android:layout_marginLeft="1dp"
        android:background="@drawable/common_friends_icon" />

    <TextView
        android:id="@+id/friends_in_common"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_toRightOf="@id/friends_button"
        android:gravity="center_vertical"
        android:text=" 9 friends in common"
        android:textColor="#FFFFFF"
        android:textStyle="bold" />

    </RelativeLayout>

<ImageView
    android:id="@+id/friends_bg"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/friends_bar"
    android:layout_gravity="center_horizontal"
    android:background="@drawable/list_bg" />
</RelativeLayout>
</LinearLayout>
</ScrollView>
4

2 に答える 2

4

マップフラグメントの上に透明な画像を使用する代わりに、透明な色を使用してみてください。同じ問題に直面していたので、この方法を使用して解決しました。

android:background="@android:color/transparent"

ただし、技術的に言えば、Android で提案されているように、別のスクロール要素内でスクロール要素を使用しないでください。むしろ、Google マップの静的マップ API を使用して、スクロール ビュー内に静的マップを表示し、スクロール ビューをタップすると、スクロール可能な Google マップを開くことができます。新しいウィンドウで。

于 2013-03-02T05:44:09.470 に答える
0

この背後にある理由は、マップが SurfaceView を使用しているためです。アプリがこのビューを作成すると、アクティビティの背後にウィンドウが作成され、アクティビティのウィンドウ内のものが SurfaceView の元の場所の下に表示されないことを意味する穴が開けられます。

私にとって、これは魅力のように機能します。このライブラリを使用できます

https://github.com/NyxDigital/NiceSupportMapFragment/

于 2015-06-20T10:42:32.023 に答える