原创 Android:ViewStub

ViewStub是一個輕量級View,它是一個看不見的,並且不佔佈局位置,佔用資源非常小的視圖對象。可以爲ViewStub指定一個佈局,加載佈局時,只有ViewStub會被初始化,然後當ViewStub被設置爲可見時,或者是調用了ViewS

原创 java多線程之停止線程的方法實例代碼詳解

這篇文章主要介紹了java多線程之停止線程的方法實例代碼詳解,非常不錯,具有一定的參考借鑑價值,需要的朋友可以參考下 和線程停止相關的三個方法 /* 中斷線程。如果線程被wait(),join(),slee

原创 java多線程:synchronized

synchronize可以在多個線程操作同一個成員變量或者方法時,實現同步(或者互斥)的效果。synchronized可以作用於方法,以及方法內部的代碼塊。 //1 synchronized void method(){} //2

原创 java多線程: 如何停止線程

和線程停止相關的三個方法 /* 中斷線程。如果線程被wait(),join(),sleep()等方法阻塞,調用interrupt()會清除線程中斷狀態,並收到InterruptedException異常。另外interrupt();對於is

原创 開源庫Banner如何實現無限輪播

記得最初使用ViewPager實現無限輪播大致是這樣的. class BannerPagerAdapter extends PagerAdapter { List<View> list; @Override

原创 使用ViewDragHelper自定義左右可滑動內容的ViewGroup

通過在自定義的ViewGroup內部使用ViewDragHelper,使得給自定義的ViewGroup在水平方向上並排按序添加多個子View(ViewGroup),可以實現水平左右滾動的效果,類似於ViewPager. 官方解釋如下(不做翻

原创 android-lifecycle筆記

ViewModel ViewModel的職責是爲Activity或者Fragment管理數據. 如何獲取一個ViewModel? 繼承ViewModel或者AndroidViewModel class MyViewModel : Vie

原创 java: final

修飾類 final修飾類時表明這個類不能被繼承,類中的成員方法默認是final類型. 修飾方法 被final修飾的方法不能被繼承. 修飾變量 修飾基本類型變量 該基本類型變量不能再次被賦值. 修飾引用類型變量 該引用類型變量不能再指向其它對

原创 android:Activity啓動模式

SingleTask與onNewIntent,onRestart ActivityA 在AndroidManifest.xml中配置launchMode="singleTask",當從A跳轉別的界面而不finish(),再從別的界面通過st

原创 android: 高德地圖

分爲地圖,定位,搜索(我還沒做導航功能) 建議採用gradle方式集成 添加依賴 在project/build.gradle文件下添加jcenter的倉庫地址 allprojects { repositories {

原创 RxJava2:操作符執行順序和數據傳遞方向

以Observable爲例,先上代碼: //① ObservableJust<String> observable = (ObservableJust<String>) Observable.just("hello rxjava2"); /

原创 java:強引用,軟引用,弱引用和虛引用

強引用 如果一個對象具有強引用,垃圾回收器絕不會回收它.當內存空間不足時,java虛擬機寧願拋出OutOfMemoryError錯誤,使程序異常終止,也不會靠隨意回收具有強引用的對象來解決內存不足問題. 軟引用 SoftReference<

原创 java:方法覆蓋與方法重載

方法簽名 方法簽名是指方法的參數類型,順序和個數.不包含方法名稱. 重載 重載必須滿足以下條件 方法名 相同 方法的參數類型,個數和順序至少一項不同 方法的返回類型可以不同 方法的訪問權限修飾符可以不同 覆蓋 如果在子類中定義的一個方法

原创 Fragment的生命週期以及懶加載的簡單實現

首先定義一個基類Fragment,重寫所有生命週期方法,並打印log.假如現在有五個子類Fragment通過ViewPager左右滑動切換.剛進入頁面時: first----------setUserVisibleHint: false

原创 RxJava2操作符學習筆記

一切都是流 流是用來連接觀察者和被觀察者的.以電源和手機爲例,電源好比被觀察者,手機就是觀察者,而各種操作符就好比是數據線,流就是電.如果只有數據線(操作符)連接電源(被觀察者)和手機(觀察者),而沒有電(流),那麼手機(觀察者)也無法被充