帮酷LOGO
  • 显示原文与译文双语对照的内容
文章标签:效果  Effect  disp  FLOW  Drawer  Swipe  
swipe right to display drawer with all of your friends.

  • 源代码名称:FlowingDrawer
  • 源代码网址:http://www.github.com/mxn21/FlowingDrawer
  • FlowingDrawer源代码文档
  • FlowingDrawer源代码下载
  • Git URL:
    git://www.github.com/mxn21/FlowingDrawer.git
  • Git Clone代码到本地:
    git clone http://www.github.com/mxn21/FlowingDrawer
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/mxn21/FlowingDrawer
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • FlowingDrawer

    Android Arsenaltravis-ic

    Showcase

    向右滑动以显示带有流动效果的抽屉。

    下载

    在 build.gradle 文件中包含以下依赖项。

    Gradle:

    repositories {
     jcenter()
     }
     dependencies {
     compile 'com.mxn.soul:flowingdrawer-core:2.0.0' compile 'com.nineoldandroids:library:2.4.0' }

    V2.0.0-特性

    • 菜单可以放置在两个 edges:left 和右边。
    • 通过拖动边或者整个屏幕来打开抽屉。

    用法

    注意:对于这个项目的工作实现,请参见 app/ 文件夹,并查看示例应用程序。

    activity_main.xml:

     <com.mxn.soul.flowingdrawer_core.FlowingDrawer
     xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/drawerlayout"android:layout_width="match_parent"android:layout_height="match_parent"android:clipChildren="false"android:clipToPadding="false"app:edPosition="1"app:edMenuSize="260dp"app:edMenuBackground="#dddddd">
     <!--content--> <RelativeLayoutandroid:id="@+id/content"android:layout_width="match_parent"android:layout_height="match_parent"/>
     <!--menu--> <com.mxn.soul.flowingdrawer_core.FlowingMenuLayout
     android:id="@+id/menulayout"android:layout_width="match_parent"android:layout_height="match_parent">
     <FrameLayoutandroid:id="@+id/id_container_menu"android:layout_width="match_parent"android:layout_height="match_parent"/>
     </com.mxn.soul.flowingdrawer_core.FlowingMenuLayout>
     </com.mxn.soul.flowingdrawer_core.FlowingDrawer>

    要使用 FlowingDrawer,请将FlowingDrawer定位为 root,将主内容视图定位为第一个具有宽度和高度的子元素。 在主内容视图后添加FlowingMenuLayout作为子视图。 FlowingMenuLayout通常使用match_parent来表示高度和宽度。

    不要对FlowingMenuLayout或者FlowingMenuLayout的子对象设置任何背景,这意味着它们的背景应该是透明的。

    不要设置具有固定宽度的flowingmenulayout的宽度,它不是更改宽度的有用方法。

    可以在FlowingDrawer布局 node 中更改菜单属性,使用自定义属性,如 edMenuBackground,edMenuSize,edPosition 。

    使用edPosition属性对应于你希望抽屉从中出现的视图的哪一侧: 左或者 right.Left 菜单:edPosition =1,右菜单: edPosition =2.

    对于更多自定义属性,可以在 attrs.xml. 中看到

    MainActivity:

     mDrawer = (FlowingDrawer) findViewById(R.id.drawerlayout);
     mDrawer.setTouchMode(ElasticDrawer.TOUCH_MODE_BEZEL);
     mDrawer.setOnDrawerStateChangeListener(newElasticDrawer.OnDrawerStateChangeListener() {
     @OverridepublicvoidonDrawerStateChange(intoldState, intnewState) {
     if (newState ==ElasticDrawer.STATE_CLOSED) {
     Log.i("MainActivity", "Drawer STATE_CLOSED");
     }
     }
     @OverridepublicvoidonDrawerSlide(floatopenRatio, intoffsetPixels) {
     Log.i("MainActivity", "openRatio="+ openRatio +", offsetPixels="+ offsetPixels);
     }
     });

    setTouchMode可以通过拖动边缘或者整个屏幕来打开抽屉。 setOnDrawerStateChangeListener可以用于监视抽屉视图的状态和运动。 在动画过程中避免执行像布局这样昂贵的操作,因为它可能导致不流畅。 ElasticDrawer.OnDrawerStateChangeListener 为每个回调方法提供缺省/无操作实现。

    许可证
    Copyright 2015 soul.mxn
    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.


    文章标签:disp  Effect  效果  FLOW  Swipe  Drawer  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语