滑动屏幕Android

时间:2016-07-27 18:13:15

标签: android android-layout

enter image description here

制作此滑动屏幕的过程是什么。我有点困惑。那片段是滑动还是活动,是什么后续程序?

2 个答案:

答案 0 :(得分:1)

这是Android支持库23.2支持的android BottomSheetDialogFragment。

要使用此支持库,请在app的build.gradle中添加依赖项

  

编译'com.android.support:design:23.2.0'

您可以按如下方式创建自己的bottomsheetdialogfragment:

public class TutsPlusBottomSheetDialogFragment extends BottomSheetDialogFragment {

    private BottomSheetBehavior.BottomSheetCallback mBottomSheetBehaviorCallback = new BottomSheetBehavior.BottomSheetCallback() {

        @Override
        public void onStateChanged(@NonNull View bottomSheet, int newState) {
            if (newState == BottomSheetBehavior.STATE_HIDDEN) {
                dismiss();
            }

        }

        @Override
        public void onSlide(@NonNull View bottomSheet, float slideOffset) {
        }
    };

    @Override
    public void setupDialog(Dialog dialog, int style) {
        super.setupDialog(dialog, style);
        View contentView = View.inflate(getContext(), R.layout.fragment_bottom_sheet, null);
        dialog.setContentView(contentView);

        CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) ((View) contentView.getParent()).getLayoutParams();
        CoordinatorLayout.Behavior behavior = params.getBehavior();

        if( behavior != null && behavior instanceof BottomSheetBehavior ) {
            ((BottomSheetBehavior) behavior).setBottomSheetCallback(mBottomSheetBehaviorCallback);
        }
    }
}

显示:

BottomSheetDialogFragment bottomSheetDialogFragment = new TutsPlusBottomSheetDialogFragment();
bottomSheetDialogFragment.show(getSupportFragmentManager(), bottomSheetDialogFragment.getTag());

有关详细信息,请访问http://code.tutsplus.com/articles/how-to-use-bottom-sheets-with-the-design-support-library--cms-26031

https://github.com/Flipboard/bottomsheet

答案 1 :(得分:0)

这称为Parallax Scrolling。它可以通过多种方式实现,例如使用Google Design Support Library。

编辑:当然,我可能会弄错,因为你的截图只是一个截图,它可能是一个完全不同的效果。