将Eclipse项目导入Studio

时间:2016-03-22 11:14:33

标签: java android eclipse google-maps android-fragments

我已将我的eclipse项目导入Android Studio并更新为com.google.android.gms.common.api.GoogleApiClient。

我的项目有一个包含许多片段的主要活动。主页按钮片段中有地图。请参阅下面的添加地图:

    private void addMap() {
FragmentManager fm = getChildFragmentManager();
if(isGoogleMapsInstalled())
    {
        if (fragment == null) 
        {
            GoogleMapOptions op = new GoogleMapOptions();
            op.zOrderOnTop(true);
            op.zoomControlsEnabled(false);
            fragment = MapFragment.newInstance(op);
            fm.beginTransaction().replace(R.id.homemap_id, fragment).commit();
        }
    }else
    {
        Toast.makeText(getActivity(), "Please install google map", Toast.LENGTH_SHORT).show();
    }
}

在成功运行项目时,地图会隐藏放置在其上的所有视图和按钮。即使MainActivity的菜单滑块显示在地图下方,但是从地图和地图上工作也会变为禁用。

enter image description here

**编辑::认为它可能是某些内存问题的问题所以在app gradle中的代码下方使用,但没有运气。

    multiDexEnabled true
dexOptions {
incremental true
javaMaxHeapSize "4g"

}

请帮助解决此问题。 **注意::代码在Eclipse中运行良好。

编辑::

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:custom="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/bg_texture_a"
    android:orientation="vertical" >

    <RelativeLayout android:id="@+id/map_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1" >

        <FrameLayout
            android:id="@+id/homemap_id"
            android:background="@color/dark_red_text_trans"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >
        </FrameLayout>

        <CheckBox
            android:id="@+id/traffic_heat_btn"
            android:layout_width="42dp"
            android:layout_height="42dp"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp"
            android:layout_marginTop="70dp"
            android:background="@drawable/selector_traffic_toggle"
            android:button="@null"
            android:checked="false"
            android:scaleType="fitCenter" />

        <TextView
            android:id="@+id/mylocation_btn"
            android:layout_width="42dp"
            android:layout_height="42dp"
            android:layout_alignParentRight="true"
            android:layout_alignParentBottom="true"
            android:layout_marginRight="10dp"
            android:layout_marginBottom="70dp"
            android:background="@drawable/selector_location_toggle"
            android:button="@null"
            android:scaleType="fitCenter" />

       <HorizontalScrollView
            android:id="@+id/box_horizonScroll"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="0dp"
            android:orientation="horizontal"
            android:scrollbars="vertical"
            android:visibility="gone" >

            <!-- android:background="#aaffffff" -->

            <LinearLayout
                android:id="@+id/dependent_layout"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:paddingLeft="5dp"
                android:paddingRight="5dp" >
            </LinearLayout>

        </HorizontalScrollView>


    </RelativeLayout>

    <LinearLayout
        android:id="@+id/mask_bottom_layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        android:background="@color/dark_red_text"
        android:gravity="center_vertical"
        android:orientation="horizontal"
        android:visibility="gone" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:paddingBottom="17dp"
            android:paddingLeft="20dp"
            android:paddingTop="17dp"
            android:text="Cancel"
            android:textColor="@color/white"
            android:textSize="@dimen/text_sizes_smallest"
            android:textStyle="bold" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="DONE"
            android:textColor="@color/white"
            android:textSize="@dimen/text_sizes_medium"
            android:textStyle="bold" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:paddingRight="15dp"
            android:text="Clear Filters"
            android:textColor="@color/white"
            android:textSize="@dimen/text_sizes_smallest"
            android:textStyle="bold"
            android:visibility="visible" />
    </LinearLayout>

</LinearLayout>

1 个答案:

答案 0 :(得分:1)

find out Here解决您的问题。    我在ICS 4.0.4上遇到了同样的问题。 jfeinstein10的github帖子中提到的解决方案似乎对我不起作用。但我找到了一种解决方法,即使它不是最好的。

创建DrawerToggle对象时,我会覆盖此事件

@Override
public void onDrawerSlide(View drawerView, float slideOffset)
{
     super.onDrawerSlide(drawerView, slideOffset);
     mDrawerLayout.bringChildToFront(drawerView);
     mDrawerLayout.requestLayout();
     mDrawerLayout.setScrimColor(Color.TRANSPARENT);

}

bringChildToFront和requestLayout方法应该克服抽屉渲染问题,而setScrimColor将摆脱阴影。太糟糕了,我还没有找到一个解决方法来正确渲染阴影。希望这会有所帮助。