<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                參考博客: [http://blog.csdn.net/lmj623565791/article/details/39257409](http://blog.csdn.net/lmj623565791/article/details/39257409) [http://blog.csdn.net/lmj623565791/article/details/41531475/](http://blog.csdn.net/lmj623565791/article/details/41531475/) DrawerLayout,鴻洋前輩的博客中其實寫的已經很不錯了,但是在**ViewHelper**的動畫設置上,鴻洋前輩并未有過多的描述,對筆者此類沒接觸過**nineoldandroids**動畫的新手來講真的有點余言未盡的感覺,于是筆者下載了前輩的demo,然后自己又學習了一下。 學習內容:**(源碼在文章結尾)** 1、簡化了demo,僅僅留下了左邊的抽屜。 2、添加了詳細的注釋。 3、學習了andorid studio添加library的方法。(添加nineoldandroids的library) 效果如圖: ![](https://box.kancloud.cn/2016-03-01_56d551f15adee.jpg) ??![](https://box.kancloud.cn/2016-03-01_56d551f188716.jpg) MainAcitivity: ~~~ package com.example.drawerlayouttest; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.support.v4.widget.DrawerLayout; import android.support.v4.widget.DrawerLayout.DrawerListener; import android.view.View; import android.view.Window; import com.nineoldandroids.view.ViewHelper; public class MainActivity extends FragmentActivity { private DrawerLayout mDrawerLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); mDrawerLayout = (DrawerLayout) findViewById(R.id.id_drawerLayout); initEvents(); } private void initEvents() { mDrawerLayout.setDrawerListener(new DrawerListener() { @Override public void onDrawerStateChanged(int newState) { } //當產生抽屜滑動時 @Override public void onDrawerSlide(View drawerView, float slideOffset) { //獲取mDrawerLayout中的第一個子布局,也就是布局中的Relativelayt //獲取抽屜的view View mContent = mDrawerLayout.getChildAt(0); View mMenu = drawerView; float scale = 1 - slideOffset; float rightScale = 0.8f + scale * 0.2f; if (drawerView.getTag().equals("LEFT")) { float leftScale = 1 - 0.3f * scale; //設置左邊菜單滑動后的占據屏幕大小 ViewHelper.setScaleX(mMenu, leftScale); ViewHelper.setScaleY(mMenu, leftScale); //設置菜單透明度 ViewHelper.setAlpha(mMenu, 0.6f + 0.4f * (1 - scale)); //設置內容界面水平和垂直方向偏轉量 //在滑動時內容界面的寬度為 屏幕寬度減去菜單界面所占寬度 ViewHelper.setTranslationX(mContent, mMenu.getMeasuredWidth() * (1 - scale)); //設置內容界面操作無效(比如有button就會點擊無效) mContent.invalidate(); //設置右邊菜單滑動后的占據屏幕大小 ViewHelper.setScaleX(mContent, rightScale); ViewHelper.setScaleY(mContent, rightScale); } } @Override public void onDrawerOpened(View drawerView) { } @Override public void onDrawerClosed(View drawerView) { } }); } } ~~~ 另外也是附上android studio中library的添加方法,**nineoldandroids的包需要按此方法手動添加**,如下圖: 1、在file中找到 project stucture。 ![](https://box.kancloud.cn/2016-03-01_56d551f1ab3bd.jpg) 2、打開后,選擇 app->dependencies,點擊加號添加library ![](https://box.kancloud.cn/2016-03-01_56d551f1ce7f1.jpg) 3、在 Choose Library Dependency的搜索框中搜索nineoldandroids,選擇要添加的library。然后點擊OK,添加完成。 ![](https://box.kancloud.cn/2016-03-01_56d551f1ec831.jpg) 源碼地址:[http://download.csdn.net/detail/double2hao/9396173](http://download.csdn.net/detail/double2hao/9396173)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看