一、設置狀態欄爲透明
1、屏蔽.fitsSystemWindows(true)
<?xml version="1.0" encoding="utf-8"?> <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="lianxin.web.psybot.nexring.MainActivity"> <include layout="@layout/content_main" /> </androidx.coordinatorlayout.widget.CoordinatorLayout> <!-- android:fitsSystemWindows="true"--> <!-- .fitsSystemWindows(true) //解決狀態欄和佈局重疊問題,任選其一,默認爲false,當爲true時一定要指定statusBarColor(),不然狀態欄爲透明色,還有一些重載方法-->
2、設置狀態欄的字體顏色爲黑色
// 設置狀態欄 if (Build.VERSION.SDK_INT >= 21) { val decorView = window.decorView decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LAYOUT_STABLE var originVisibility: Int = decorView.getSystemUiVisibility() if ( originVisibility and View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR == 0) { originVisibility = originVisibility or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR } decorView.setSystemUiVisibility(originVisibility) window.statusBarColor = Color.TRANSPARENT }
二、向下取整,向上取整,四捨五入
val number = 3.75 val result = floor(number) // 調用floor()函數對number進行向下取整 println("結果爲:$result") // 輸出結果爲3.0
val number = 3.14 val roundedNumber = ceil(number) // 將小數部分四捨五入到最接近的大於或等於該值的整數 println("向上取整後的結果爲:$roundedNumber")
val number = 3.145926 val roundedNumber = number.round() // 結果爲3 println(roundedNumber)
三、獲取時間戳
// Calendar 是this var dateTime : Long = this.getTimeInMillis();
四、webView加載
// 設置webView============================================================================== messageHandler = MessageHandler() binding.webView.webViewClient = WebViewClient() binding.webView.settings.javaScriptEnabled=true; binding.webView.settings.setSupportZoom(false) // 支持縮放 默認爲true 是下面那個的前提 binding.webView.settings.builtInZoomControls = false // 設置內置的縮放控件 若爲false 則該WebView不可縮放 binding.webView.settings.displayZoomControls = false // 隱藏原生的縮放控件 binding.webView.settings.cacheMode = WebSettings.LOAD_DEFAULT // 緩存模式 binding.webView.settings.domStorageEnabled = true // 啓用或禁用DOM緩存 binding.webView.settings.setSupportMultipleWindows(false) // 設置WebView是否支持多窗口 // 設置自適應屏幕, 兩者合用 binding.webView.settings.useWideViewPort = true // 將圖片調整到適合webview的大小 binding.webView.settings.loadWithOverviewMode = true // 縮放至屏幕的大小 binding.webView.settings.allowFileAccess = true // 設置可以訪問文件 binding.webView.settings.setGeolocationEnabled(true) // 是否使用地理位置 binding.webView.fitsSystemWindows = true binding.webView.setLayerType(View.LAYER_TYPE_HARDWARE,null) binding.webView.loadUrl("https://xxx") //Kotlin與H5通信方式1: H5調用Kotlin方法 //設置Kotlin與H5通信橋樑類 binding.webView.addJavascriptInterface(this,"NativeBridge") // 返回上一層 binding.webView.setOnKeyListener { view, keyCode, keyEvent -> if (keyEvent.action == KeyEvent.ACTION_DOWN) { if (keyCode == KeyEvent.KEYCODE_BACK && binding.webView.canGoBack()) { binding.webView.goBack() return@setOnKeyListener true } } return@setOnKeyListener false } // 設置webView==============================================================================