# SlideUp-ohos **Repository Path**: HarmonyOS-tpc/SlideUp-ohos ## Basic Information - **Project Name**: SlideUp-ohos - **Description**: SlideUp是一个小型库,可让您向任何视图添加甜美的幻灯片效果。使用SlideUp向上,向下,向左或向右滑动视图! - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2021-04-01 - **Last Updated**: 2025-02-06 ## Categories & Tags **Categories**: harmonyos-view-transition **Tags**: None ## README 该三方开源库从github fork过来,主要将底层接口调用的实现修改成鸿蒙接口的实现,将三方库鸿蒙化,供开发鸿蒙应用的开发者使用 fork版本号/日期:2.2.8 / 2017/12/5 # SlideUp-Harmony SlideUp是一个小型库,可让您向任何视图添加甜美的幻灯片效果。使用SlideUp向上,向下,向左或向右滑动视图! 项目移植状态:支持组件所有基本功能 完成度:100% 调用差异:无 **导入方法** 1.har导入 将har包放入lib文件夹并在build.gradle添加 ``` implementation fileTree(dir: 'libs', include: ['*.har']) ``` 2.Library引用 添加本工程中UcropLib模块到任意工程中,在需要使用的模块build.gradle中添加 ``` implementation project(':library') ``` or ``` allprojects{ repositories{ mavenCentral() } } implementation 'io.openharmony.tpc.thirdlib:SlideUp-ohos:1.0.1' ``` **使用方法** 1 .在布局文件中添加以下代码 ``` ``` 2.在代码中初始化参数 ``` //初始化 sliderView = findComponentById(ResourceTable.Id_slideView); //新建并初始化SlideUpBuilder slideUp = new SlideUpBuilder(sliderView) .withListeners(new SlideUp.Listener.Events() { @Override public void onSlide(float percent) { dim.setAlpha(1 - (percent / 100)); if (fab.isComponentDisplayed() && percent < 100) { fab.setVisibility(Component.HIDE); } } @Override public void onVisibilityChanged(int visibility) { if (visibility == Component.HIDE) { fab.setVisibility(Component.VISIBLE); } } }) //视图的位置 .withStartGravity(Gravity.BOTTOM) //是否打印log .withLoggingEnabled(true) //是否可以手势 .withGesturesEnabled(true) //视图开始的状态 .withStartState(SlideUp.State.HIDDEN) //视图的父视图 .withSlideFromOtherView(findComponentById(ResourceTable.Id_rootView)) //创建 .build(); ``` 3.一些功能设置介绍 ``` //以view为参数初始化SlideUpBuilder SlideUpBuilder slideUpBuilder = new SlideUpBuilder(); //设置是动画的时间 slideUpBuilder.withAutoSlideDuration(); //设置是否可以滑动 slideUpBuilder.withGesturesEnabled(); //设置 slideUpBuilder.withHideSoftInputWhenDisplayed(); //设置动画的差值器 slideUpBuilder.withInterpolator(); //设置监听 slideUpBuilder.withListeners(); //设置是否可以打印log slideUpBuilder.withLoggingEnabled(); - //设置可以触摸的距离长度px slideUpBuilder.withTouchableAreaPx(); //设置父布局 slideUpBuilder.withSlideFromOtherView(); //设置视图开始的位置 slideUpBuilder.withStartGravity(); //设置可以触摸的距离长度dp slideUpBuilder.withTouchableAreaDp(); //设置开始的状态 slideUpBuilder.withStartState(); //设置监听 slideUp.addSlideListener(); //设置动画的时长 slideUp.getAutoSlideDuration(); //设置动画差值器 slideUp.getInterpolator(); //获取滑动的视图 slideUp.getSliderView(); //获取视图的位置 slideUp.getStartGravity(); //获取滑动触发的距离长度dp slideUp.getTouchableAreaDp(); //获取滑动触发的距离长度px slideUp.getTouchableAreaPx(); //隐藏视图无动画效果 slideUp.hide(); //是否立即隐藏视图或有动画效果隐藏视图 slideUp.hideImmediately(); //显示视图无动画效果 slideUp.show(); //显示视图并设置是否有动画效果 slideUp.showImmediately(); //是否在运行动画 slideUp.isAnimationRunning(); //获取是否可以触摸操作 slideUp.isGesturesEnabled(); //设置是否打印log slideUp.isLoggingEnabled(); //视图是否显示 slideUp.isVisible(); //通知参数变化 slideUp.notifyPercentChanged(); //通知视图可见状态变化 slideUp.notifyVisibilityChanged(); //移除监听 slideUp.removeSlideListener(); //设置动画的时间 slideUp.setAutoSlideDuration(); //设置是否可以触摸操作 slideUp.setGesturesEnabled(); //设置动画差值器 slideUp.setInterpolator(); //设置是否打印log slideUp.setLoggingEnabled(); //获取滑动触发的距离长度dp slideUp.setTouchableAreaDp(); //获取滑动触发的距离长度px slideUp.setTouchableAreaPx(); ```