原创 Android輸入法back出現黑塊

Android中彈出輸入法界面不影響app界面佈局 默認情況下,輸入法彈出的時候,原來的view會被擠扁,按back鍵退出輸入法時,原先被輸入法覆蓋

原创 Android 架構組件

Android 架構組件 Android架構組件包括: Lifecycles LiveData ViewModel Room Paging WorkManager DataBinding Navigation LifeCycl

原创 WebView加載本地html設置屏幕設備自適應

package com.ui.view.web; import android.content.Context; import android.os.Build; import android.support.annotation.N

原创 23種經典設計模式UML類圖彙總

23種經典設計模式UML類圖彙總 創建型模式 1、FACTORY—追MM少不了請吃飯了,麥當勞的雞翅和肯德基的雞翅都是MM愛吃的東西,雖然口味有所不同,但不管你帶MM去麥當勞或肯德基,只管向服務員說“來四個雞翅”就行了。麥當勞和肯德基就

原创 Combine multiple jar into one

just extract the two jar files and recreate a new one $ mkdir tmp $ (cd tmp; unzip -uo ../jar1.jar) $ (cd tmp; unzip -

原创 Vector與ArrayList與CopyOnWriteArrayList區別

1. Vector & ArrayList 1)  Vector的方法都是同步的(Synchronized),是線程安全的(thread-safe),而ArrayList的方法不是,由於線程的同步必然要影響性能,因此,ArrayList的

原创 設置SurfaceView背景透明

廢話不多說,直接上代碼: surfaceview.setZOrderOnTop(true); surfaceview.getHolder().setFormat(PixelFormat.TRANSLUCENT); 一般會用上面這個,但上面

原创 Gradle上傳aar到Maven

一.配置 創建gradle.properties內容如下: BUILD_TYPE=release MAVEN_URL=倉庫地址 MAVEN_URL_SNAPSHOT=倉庫地址 MAVEN_USER_NAME=用戶名 MAVEN_PWD=

原创 Pattern和Matcher詳解

結論:Pattern與Matcher一起合作.Matcher類提供了對正則表達式的分組支持,以及對正則表達式的多次匹配支持. 單獨用Pattern只能使用Pattern.matcher(String regex,CharSequence

原创 遍歷List的同時對List進行修改

先上代碼: Collection<String> list = new ArrayList<String>(); list.add("Android"); list.add("iPhone");

原创 Android Studio Useful Plugins

1.GsonFormat 快速將json字符串轉換成一個Java Bean,免去我們根據json字符串手寫對應Java Bean的過程。 使用方法:快捷鍵Alt+S也可以使用Alt+Insert選擇GsonFormat 2.Androi

原创 Android檢測當前VPN狀態

掃描所有網絡接口,查看是否有使用VPN的(接口名爲tun0或ppp0): public boolean isVpnConnected() { try { Enumeration<NetworkInterface>

原创 RippleEffect波紋效果

Android L以下的Android 版本使用點擊波紋效果可以使用這個library https://github.com/traex/RippleEffect 在gradle中: dependencies { compil

原创 Activity中定義Handler有警告

思考下面代碼 1 public class SampleActivity extends Activity { 2 3 private final Handler mLeakyHandler = new Handler() {

原创 Package manager has died at android.app.ApplicationPackageManager.getInstalledPackages

造成Package manager掛掉的原因大概有一下兩個: -- The user has too many applications installed, such that the list of installed package