Android開發技巧

weixin_34148340發表於2016-11-28

寫一些開發中的小技巧


實現DrawerLayout上漢堡按鈕的動畫效果



效果圖

當側滑DrawerLayout的時候,左上角的漢堡按鈕會有動畫發生。

程式碼實現如下:

ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
                this, mDrawerLayout, mToolbar, R.string.open_desc, R.string.close_desc
        );
mDrawerLayout.setDrawerListener(toggle);
toggle.syncState();複製程式碼

而且,在使用了ActionBarDrawerToggle之後,就不需要在onOptionsItemSelected()中監聽android.R.id.home的點選事件了。

通過返回鍵關閉DrawerLayout

重寫onBackPressed()方法,當DrawerLayout處於開啟狀態時,先關閉DrawerLayout

程式碼實現如下:

@Override
public void onBackPressed() {
    if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
        mDrawerLayout.closeDrawer(GravityCompat.START);
    } else {
        super.onBackPressed();
    }
}複製程式碼

通過Gradle動態修改app_name

/**
 * 獲取當前時間
 * @return 當前時間
 */
def currentTime() {
    return new Date().format("yyyy_MM_dd HH:mm:ss", TimeZone.getTimeZone("GMT+8"))
}

def app_name_release = "Emoticon"
def debug_suffix = "debug"

android{
  ...

  buildTypes {
        release {
            ...
            resValue("string", "app_name", app_name_release)
        }
        debug {
            resValue("string", "app_name", "${app_name_release}_${debug_suffix}_${currentTime()}")
        }
      }

  ...
}複製程式碼

歡迎大家關注我的 StudyNote

相關文章