android - ViewPager fragment 中的 CircularFloatingActionMenu

标签 android android-fragments android-activity android-viewpager fragment

在我的 android 应用程序中,我有带有一些 fragment 的 ViewPager。我想在其中一个 fragment 中使用和显示圆形 float 操作按钮菜单,但 FAB 在所有 fragment 中都可见。如何解决这个问题并仅在一个 fragment 中显示 FAB。顺便说一句,它是图书馆:github

fragment .java

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //Floating Action Button
        //Create a button to attach the menu
        ImageView movieFAB = new ImageView(getActivity());
        movieFAB.setImageResource(R.drawable.ic_launcher);

        //Create menu items
        FloatingActionButton actionButton = new FloatingActionButton.Builder(getActivity()).setContentView(movieFAB).build();
        ImageView iconSortName = new ImageView(getActivity());
        iconSortName.setImageResource(R.drawable.icon_star);
        ImageView iconSortDate = new ImageView(getActivity());
        iconSortDate.setImageResource(R.drawable.icon_cloud);
        ImageView iconSortRatings = new ImageView(getActivity());
        iconSortRatings.setImageResource(R.drawable.icon_communication);

        SubActionButton.Builder itemBuilder = new SubActionButton.Builder(getActivity());
        SubActionButton buttonSortName = itemBuilder.setContentView(iconSortName).build();
        SubActionButton buttonSortDate = itemBuilder.setContentView(iconSortDate).build();
        SubActionButton buttonSortRatings = itemBuilder.setContentView(iconSortRatings).build();

        //Create the menu with the items
        FloatingActionMenu actionMenu = new FloatingActionMenu.Builder(getActivity())
                .addSubActionView(buttonSortName)
                .addSubActionView(buttonSortDate)
                .addSubActionView(buttonSortRatings)
                .attachTo(actionButton)
                .build();
    }

感谢您的帮助!

最佳答案

创建 OnPageChangeListener 的实现,其中覆盖 onPageSelected 方法。

@Override
public void onPageSelected(int position) {
    if (position == VALID_POSITION) {
        fabMenu.setVisibility(View.GONE);
    } else {
        fabMenu.setVisibility(View.VISIBLE);
    }
}

然后设置到viewPager

pager.setOnPageChangeListener(....);

希望对你有帮助

关于android - ViewPager fragment 中的 CircularFloatingActionMenu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29060016/

相关文章:

java - android "cannot resolve method"使用应用程序对象时出错

java - 无法使用 Android PhotoView Activity

android - 将使用哪种类型的客户端/服务器架构?

java - java中的热敏打印机命令

java - 将数据从 RecyclerView 发送到 Fragment

php - 值在 TextView 中未传递到 Mysql 数据库

java - 使用同一资源文件更改所有布局的 TextView 值

android - Android NDK 代码中的 SIGILL

android - 是否可以将 Activity 和 fragment 与底部导航一起使用?

android - 如何通过多个 Activity 返回结果