1 Star 0 Fork 2

honglei92 / FlipLayoutManager

forked from sclimin / FlipLayoutManager 
Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or Download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README.md

FlipLayoutManager

License

介绍

自定义水平、垂直翻页RecycleView.LayoutManager。因为需要实现页面翻折效果,需要自定义相关页面RootView 。使用时PageRootView必须实现FlipLayout接口。

效果图

blockchain

原理

...

使用

设置RecyclerViewLayoutManager,并配置翻页模式

<androidx.recyclerview.widget.RecyclerView
        ...
        app:layoutManager="com.sclimin.recycler.flip.FlipLayoutManager"
        // 翻页模式
        android:orientation="vertical"
        
        android:orientation="horizontal"
        ... />

PageRootView必须使用实现FlipLayout接口的Layout

<?xml version="1.0" encoding="utf-8"?>
<com.sclimin.recycler.flip.FlipSampleLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    
    ...
    
</com.sclimin.recycler.flip.FlipSampleLayout>

自定义FlipLayout

public class FlipSampleLayout extends FrameLayout implements FlipLayout {

    private FlipLayoutHelper mHelper;

    ...

    @Override
    protected void onSizeChanged(int w, int h, int ow, int oh) {
        super.onSizeChanged(w, h, ow, oh);
        mHelper.sizeChanged(w, h);
    }

    @Override
    public void draw(Canvas canvas) {
        if (mHelper.draw(canvas)) {
            return;
        }
        super.draw(canvas);
    }

    @Override
    public void drawSuper(Canvas canvas) {
        super.draw(canvas);
    }
}

License

   Copyright 2020 sclimin

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

Repository Comments ( 0 )

Sign in to post a comment

About

自定义水平、垂直翻页RecycleView.LayoutManager expand collapse
Apache-2.0
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
1
https://git.oschina.net/honglei92/FlipLayoutManager.git
git@git.oschina.net:honglei92/FlipLayoutManager.git
honglei92
FlipLayoutManager
FlipLayoutManager
master

Search

161121 f78d6d6f 1850385 154831 86f8c370 1850385