寫一些開發中的小技巧
實現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。