如何在我的Android应用程序主屏幕中实现以下过渡?

时间:2015-12-29 12:02:31

标签: android android-layout android-animation

我正在将ios应用程序转换为Android应用程序。请有人帮我转换。我无法找到主菜单转换/动画菜单如事件,专业节目,关于我们等如何以圆形图案显示。请有人帮忙。

请参阅以下动画链接。

Home Screen1

Home Screen2

2 个答案:

答案 0 :(得分:1)

您可以查看此库。简单的修改可以帮助您实现所需的设计。

图书馆: https://github.com/saurabharora90/MaterialArcMenu

如何实施:

在构建gradle中添加:

net.*

并在您的布局中包含com.sa90.materialarcmenu.ArcMenu作为视图组(子菜单为子)。例如:

dependencies {
compile 'com.sa90.materialarcmenu:library:1.1.1'

子菜单(孩子)可以是任何东西。这是一个ImageButton示例:

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab1"
    android:layout_width="wrap_content"
    android:src="@drawable/ic_dialog_email"
    android:layout_height="wrap_content" />

<android.support.design.widget.FloatingActionButton
    android:layout_width="wrap_content"
    android:src="@drawable/ic_dialog_alert"
    android:layout_height="wrap_content" />

<android.support.design.widget.FloatingActionButton
    android:layout_width="wrap_content"
    android:src="@drawable/ic_dialog_info"
    android:layout_height="wrap_content" />

<android.support.design.widget.FloatingActionButton
    android:layout_width="wrap_content"
    android:src="@drawable/ic_dialog_map"
    android:layout_height="wrap_content" />

答案 1 :(得分:0)

如果您希望所有版本

,也可以参考卫星菜单库
 SatelliteMenu menu = (SatelliteMenu) findViewById(R.id.menu);

//        Set from XML, possible to programmatically set        
//        float distance = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 170, getResources().getDisplayMetrics());
//        menu.setSatelliteDistance((int) distance);
//        menu.setExpandDuration(500);
//        menu.setCloseItemsOnClick(false);
//        menu.setTotalSpacingDegree(60);

        List<SatelliteMenuItem> items = new ArrayList<SatelliteMenuItem>();
        items.add(new SatelliteMenuItem(4, R.drawable.ic_1));
        items.add(new SatelliteMenuItem(4, R.drawable.ic_3));
        items.add(new SatelliteMenuItem(4, R.drawable.ic_4));
        items.add(new SatelliteMenuItem(3, R.drawable.ic_5));
        items.add(new SatelliteMenuItem(2, R.drawable.ic_6));
        items.add(new SatelliteMenuItem(1, R.drawable.ic_2));

有关详细信息,请参阅此链接 https://github.com/siyamed/android-satellite-menu/blob/master/satellite-menu-sample