原创 利用rxjava實現監聽EditView裏的文字在規定時間間隔不變後進行聯想搜索

當EditView輸入的內容變化停止幾秒鐘之後再去後進行搜索, debounce:防抖 當一個事件發送出來之後,在約定時間內沒有再次發送這個事件,則發射這個事件,如果再次觸發了,則重新計算時間。 switchMap :當源Observ

原创 Flutter 四種方式實現頁面切換後保持原頁面狀態

前言: 在 Flutter 應用中,導航欄切換頁面後默認情況下會丟失原頁面狀態,即每次進入頁面時都會重新初始化狀態,不僅增加額外開銷,而且體驗差。 使用IndexedStack實現 IndexedStack繼承自Stack,它

原创 解決Flutter使用 Scaffold + Tabbar + TabbarView保存頁面狀態問題

Flutter切換tab後默認不會保留tab狀態 ,Flutter中爲了節約內存不會保存widget的狀態,widget都是臨時變量。當我們使用TabBar,TabBarView是我們就會發現,切換tab,initState又會被

原创 Flutter去掉AppBar避免body溢出到狀態欄

沒有AppBar的Flutter,如果不在Scaffold中使用AppBar會發現默認是沉浸式。 預留出狀態欄的高度方法 Scaffold( appBar: PreferredSize( prefer

原创 dart關於函數的語法

目錄 function 中=>的用法 Optional parameters(可選參數) Default parameter values(默認參數值) function 中=>的用法 isNoble(atomicNumber)

原创 flutter開發常見問題

Error on line 6, column 5 of pubspec.yaml: A dependency may only have one source. sdk: flutter ^^^^^^^^^^^^^ 方法:d

原创 textview不同顏色字體點擊事件圖片2

spannableString和html實現textview設置不同顏色字體點擊事件簡單用法點這裏 1、SpannableString、SpannableStringBuilder與String的關係 首先SpannableStrin

原创 Dagger2 進階(五)

懶加載Lazy和強制重新加載Provider //懶加載 @Inject Lazy<Person> lazyStudent; //強制重新加載 @Inject Provider<Person> providerStudent; 使用的時

原创 Dagger2 基礎 (一)

最簡單的應用 配置環境在根gradle中 dependencies { ... // 其他classpath classpath 'com.neenbedankt.gradle.plugins:andr

原创 textview設置多種不同的字體顏色和點擊事件

最近項目需要用到textview爲特定字符設置不同的顏色,如果用不同的控件拼起來的話一行也許沒有問題,但是如果換行的話效果就不理想了就像qq空間回覆品論的效果,暱稱和內容文字顏色不一樣,點擊事件也不一樣。 目前我找到兩張方法,效果一樣。想

原创 Android NDK(二)最最簡單的方法利用NDK實現MP3錄音

首先瞭解到調用android原生的錄音無法生成MP3格式,其次java無法實現對文件的轉碼(個人見解),所以採用libmp3lame把AudioRecord音頻流直接轉換成MP3格式。這裏採用的是最新的lame-3.99.5.tar。