<input id="0qass"><u id="0qass"></u></input>
  • <input id="0qass"><u id="0qass"></u></input>
  • <menu id="0qass"><u id="0qass"></u></menu>

    自定義博客皮膚VIP專享

    *博客頭圖:

    格式為PNG、JPG,寬度*高度大于1920*100像素,不超過2MB,主視覺建議放在右側,請參照線上博客頭圖

    請上傳大于1920*100像素的圖片!

    博客底圖:

    圖片格式為PNG、JPG,不超過1MB,可上下左右平鋪至整個背景

    欄目圖:

    圖片格式為PNG、JPG,圖片寬度*高度為300*38像素,不超過0.5MB

    主標題顏色:

    RGB顏色,例如:#AFAFAF

    Hover:

    RGB顏色,例如:#AFAFAF

    副標題顏色:

    RGB顏色,例如:#AFAFAF

    自定義博客皮膚

    -+

    卓原的進化之旅

    活到老,學到老

    • 博客(117)
    • 資源 (4)
    • 論壇 (1)

    原創 flutter 分享到whatsapp

    android無需額外配置ios:&lt;key&gt;LSApplicationQueriesSchemes&lt;/key&gt;&lt;array&gt; &lt;string&gt;whatsapp&lt;/string&gt;&lt;/array&gt;flutter :需要 url_launcher_launchWhatsapp() async {const url = "https://wa.me/?text=Your Message here";var encod

    2020-09-29 22:26:30 30

    原創 FractionallySizedBox 按比例設置Widget的尺寸

    FractionallySizedBox 按比例設置Widget的尺寸有時候,應用的設計是按比例給出的,例如這樣 : 按鈕應該占應用寬度的70%這時可以使用FractionallySizedBox來實現.構造方法const FractionallySizedBox({ Key key, this.alignment = Alignment.center, this.widthFactor, this.heightFactor, Widget child,}) 我們先看一下

    2020-08-22 15:53:52 86

    原創 Flutter國際化 多語言 使用Flutter intl插件實現多語言

    準備工作搜索插件 : Flutter Intl項目配置添加依賴:dev_dependencies:... //add this flutter_localizations: sdk: flutter在菜單欄的Tool下找到Flutter Intl 并選擇Initalize for the project, 配置結束后效果如下:會在 pubspec.yaml中增加以下字段flutter_intl: enabled: true會在lib目錄下增加 g

    2020-08-20 00:24:35 541

    原創 Flutte接入firebase messaging(FCM)

    flutter接入firebase messaging其實文檔說的還算比較詳細,但有些東西沒有更新,照著文檔無法正常集成。pub地址使用添加依賴 # firebase firebase_messaging: ^6.0.16Android配置在firebase后臺添加應用使用Firebase控制臺將Android應用添加到您的項目中:跟隨助手,下載生成的google-services.json文件,并將其放置在android / app中。dependencies {

    2020-08-14 14:23:41 914 2

    原創 flutter textField設定高度后,文字無法居中

    今天遇到了一個關于TextField的問題:如果給textField設定的布局高度小于它的默認高度,那么它的居中就會有問題.修改后的效果:代碼:Container( color: Colors.black12, constraints: BoxConstraints(maxHeight: 30), child: TextField( textAlignVertical: TextAl

    2020-08-08 00:59:02 765

    原創 Android View的繪制過程復習

    Android View的繪制過程DecorView是一個應用窗口的根容器,它本質上是一個FrameLayout.DecorView有唯一一個子View,是一個垂直的LinearLayout,包含兩個子元素:TitleView(ActionBar的容器) 和 ContentView(窗口內容的容器).ContentView是一個FrameLayout(android.R.id.content),我們平時用的setContentView就是設置它的子View.上圖還表達了每個Activity都與一個

    2020-06-26 11:56:18 216

    原創 JVM復習總結

    JVM運行時數據區域根據《Java 虛擬機規范(Java SE 7 版)》規定,Java 虛擬機所管理的內存如下圖所示。程序計數器內存空間小,線程私有.字節碼解釋器工作時就是通過改變程序計數器的值來選取下一條需要執行指令的字節碼指令(主要是取下一條指令的字節碼文件).分支,循環,跳轉,異常處理,線程恢復等基礎功能都依賴程序計數器來完成.如果線程正在執行一個Java方法,這個計數器記錄的是正在執行的虛擬機字節碼指令的地址 ;如果正在執行的是Native方法, 這個計數器記錄的值為(U

    2020-06-25 17:33:40 152

    原創 初級排序算法
    原力計劃

    初級排序算法首先介紹兩個概念:內部排序:排序工作能在內存中完成外部排序:數據量太大,不能在內存中完成而需要在磁盤上完成的排序選擇排序找到數組中最小的元素將它和數組的第一個元素交換位置(如果第一個就是最小的,那么它就和自己交換)在剩下的元素中找到最小的元素,將它與數組第二個元素交換位置重復以上步驟,直到整個數組排序完成.特點:運行時間與輸入無關數據移動是最少的時間復雜度:O(n2)空間復雜度:O(1) /** * 選擇排序 *

    2020-06-23 15:02:27 172 2

    原創 二分查找法

    二分查找法二分法就是一種在有序數組中查找某一特定元素的搜索算法搜索過程從數組的中間元素開始:如果中間元素正好是要查找的元素,則搜索過程結束如果某一特定元素大于或小于中間元素,則在數組大于或小于中間元素的那一半查找,而且和開始一樣從中間元素開始比較如果在某一步驟數組為空,則代表元素找不到.復雜度算法步驟給定一個數組A,目標值為T,查找T在A中的位置令L為0,R為n-1.如果L&gt;R,則搜索以失敗告終令m(中間值元素)為"(L+R)/2".如果Am&lt;T,令L為m+1,

    2020-06-22 23:20:16 215

    原創 算法的時間復雜度
    原力計劃

    時間復雜度我們將算法執行運算的操作數丟棄掉低階項,再去掉所有的系數.在它前面加上一個O,就是大O表示法.int n = 100;int a = 10;System.out.println(a);//總共執行3次沒有更低階的項了,系數是3, 去掉系數3, 所以時間復雜度是 O(1) int n = 100; int a = 10; for (int i = 0; i &lt; n; i++) { //n次 System

    2020-06-22 22:21:40 193

    原創 Flutter key
    原力計劃

    Flutter Key當widget在widget tree中移動時,key可以保留它的狀態.key可用于保留用戶的滾動位置,或在修改集合時保持狀態.什么時候需要Key如果你還沒有用過key,說明你可能還不需要使用key.事實也正是如此,大多數時候,我們不需要使用key.但是如果你發現自己需要添加,刪除或重新排序處于某種狀態的相同類型的widget的集合的時候,可能就是需要用到key的時候了.我們先用一個官方的例子來看一下key的作用 , 交換兩個只有顏色不同的widgetclass Ke

    2020-06-22 17:41:24 188

    原創 入門 Android Lint
    原力計劃

    Lint? Android Lint 是Android Studio 在ADT(Android Developer Tools)16提供的代碼掃描工具,可以幫助我們發現和更正代碼結構質量的問題。系統會報告該工具檢測到的每個問題并提供問題的描述消息和嚴重級別,以便快速確定需要優先進行的修改。此外,我們還可以通過降低問題的嚴重級別以忽略與項目無關的問題,或者提高嚴重級別以突出特定問題。優點無需實際執行應用不必編寫測試用例Lint工作流下圖顯示了 lint 工具如何處理應用源文件。App

    2020-06-18 22:29:39 298

    原創 Flutter 復習總結

    WidgetWidget是不可變的.Widget&nbsp;是 描述 Element的配置 ,&nbsp;告訴 Element 這個實例如何去渲染。Widget 和 Element 之間是一對多的關系&nbsp;.每當Widget插入到樹中,就會生成一個對應的Element.Widget 可能被復用到樹的多個部分,對應產生多個 Element 對象。RenderObject&nbsp;RenderObject是渲染樹中的對象,所以它才是實際的渲染對象RenderObject 涉及到布局、計算

    2020-06-18 11:27:37 163

    原創 通關Android Lint
    原力計劃

    施工中Lint? Android Lint 是Android Studio 在ADT(Android Developer Tools)16提供的代碼掃描工具,可以幫助我們發現和更正代碼結構質量的問題。系統會報告該工具檢測到的每個問題并提供問題的描述消息和嚴重級別,以便快速確定需要優先進行的修改。此外,我們還可以通過降低問題的嚴重級別以忽略與項目無關的問題,或者提高嚴重級別以突出特定問題。優點無需實際執行應用不必編寫測試用例Lint工作流下圖顯示了 lint 工具如何處理應用源文件。[外

    2020-06-10 13:08:56 212

    原創 typora + smss / github / 又拍云 / 七牛云 圖床

    配置文件如下:{ "picBed": { "current": "smms", "uploader": "smms", "smms": { "token": "你的token" }, "transformer": "path" }, "picgoPlugins": { "picgo-plugin-smms-user": true }}查看smss token設置完成后點擊驗證圖片上傳即可。...

    2020-06-10 12:17:35 164

    原創 Android BottomSheetDialogFragment 可隨手勢滑動關閉的底部彈窗
    原力計劃

    在APP開發中,經常會有一個需求:從底部彈出彈窗,并且可以跟隨手指滑動關閉彈窗.簡介BottomSheetDialogFragment是位于com.google.android.material包下的一個類.BottomSheetDialogFragment 繼承自AppCompatDialogFragmentAppCompatDialogFragment繼承自DialogFragme...

    2020-03-31 17:55:51 1079 2

    原創 集成FlutterBoost

    在Flutter發布了1.12版本之后 , 在原生程序中集成flutter的方式也有了改變 , 于是重新走一遍流程.本次操作基于以下版本:Flutter 1.12.13+hotfix.5 ? channel stableAndroid Studio 3.5.2Android集成Flutter的意義有時一次全部在Flutter中重寫整個應用程序是不切實際的。在這種情況下,Flutter...

    2020-01-03 14:29:58 1517

    原創 Android LifeCycle監控生命周期

    LifeCycle的作用是感知組件(Activity/Fragment)的生命周期 , 并在合適的生命周期執行分配的任務.1.監聽組件生命后期假設我們此時有一個Util類,其中有兩個方法需要分別在Activity的onStart和onDestory的時候執行,我們可以先讓它實現LifecycleObserver:class LifecycleUtil : LifecycleObserver ...

    2019-12-27 15:35:09 863 1

    原創 Android 監聽鍵盤狀態 獲取鍵盤高度

    Android暫時還沒有提供一個合適的API來獲取/監聽鍵盤的狀態和高度 , 而我們又經常會有這個需求.最近我的一個項目中,在ugc頁面需要在鍵盤頂部,緊貼著鍵盤顯示一個文字提示,當鍵盤消失時就隱藏.因此,我需要監聽軟鍵盤的打開/關閉 , 以及獲取它的高度.ViewTreeObserverA view tree observer is used to register listeners...

    2019-12-25 11:25:30 1059 1

    原創 Android VideoView 視頻播放器 仿抖音

    前言最近項目有個需求 , 做個類似抖音的視頻效果. 又因為包大小的問題不使用第三方SDK,所以使用原生的VideoView開發了一下, 搭配RecyclerView和PageSnapHelper來實現抖音的效果.全部代碼: github看一下實現流程:首先創建了一個繼承自ConstraintLayout的View,用來實現自己的布局.東西不多, 里面主要是播放控制的按鈕, 和一個可以...

    2019-11-27 15:57:40 1397

    原創 Java 反射

    JAVA反射機制JAVA反射機制是在運行狀態中,對于任意一個實體類,都能夠知道這個類的所有屬性和方法;對于任意一個對象,都能夠調用它的任意方法和屬性;這種動態獲取信息以及動態調用對象方法的功能稱為java語言的反射機制。Java的反射機制允許編程人員在對類未知的情況下,獲取類相關信息的方式變得更加多樣靈活,調用類中相應方法,是Java增加其靈活性與動態性的一種機制功能1、獲得某個對象的屬...

    2019-11-15 16:23:29 433

    原創 Android 彈窗 DialogFragment

    前言一直以來 , 做彈窗功能的時候都是使用的Dialog , 布局復雜的彈窗則使用Activity , 把背景設置成透明, 最近了解到一個DialogFragment , 發現使用起來更加方便, 也是谷歌建議的做法.簡介DialogFragment 繼承自Fragment , 所以它的用法基本跟Fragment一致 , 也包含了一些生命周期和上下文context 和 監聽之類的東西. 而且...

    2019-10-30 17:52:44 2164 1

    翻譯 Android 內存優化——常見內存泄露及優化方案

    如果一個無用對象(不需要再使用的對象)仍然被其他對象持有引用,造成該對象無法被系統回收,以致該對象在堆中所占用的內存單元無法被釋放而造成內存空間浪費,這中情況就是內存泄露。在 Android 開發中,一些不好的編程習慣會導致我們的開發的 app 存在內存泄露的情況。下面介紹一些在 Android 開發中常見的內存泄露場景及優化方案。單例導致內存泄露單例模式在 Android 開發中會經...

    2019-10-22 15:19:40 555

    原創 記一次CSDN的簽到抽獎

    摘要前一陣子,CSDN上線了簽到贏福利,免費抽大獎活動, 可能很多小伙伴都看到了.就是這個東西 , 但我一直沒抽過獎, 想起來簽到一下而已.正文我上周簽到次數好像是3次. 今天想起來這個事 , 就去找了一下抽獎入口.找了半天都沒找到 , 聯系了一下客服:于是我又進入了簽到頁面…給大家看一下APP端簽到頁面的樣子:就這么多, 下面沒有東西了.只有簽到入口, 暫時不知道抽...

    2019-10-21 19:31:11 613 1

    原創 flutter 支持64位

    最近谷歌商店有了一個新的通知:谷歌應用商店的具體要求為:從2019年8月1日開始,除了一直存在的32位版以外,新應用和應用更新都必須提交64位的版本,不過已經上架的Unity 5.6或更早版本引擎制作的游戲除外,他們可以只提供32位版本直到兩年后的2021年8月。而截止發文時間,flutter打包出的apk還不支持64位, 于是記錄一下自己的過程.1. 向libs添加32位和64位的flut...

    2019-06-28 13:53:32 2130 11

    原創 Flutter 狀態管理之MobX

    MobX一直是主要用于JS的主要的狀態管理技術。flutter 現在關于狀態管理的方案有 Scoped Model,Inherited Widget,Redux for Flutter,甚至是BLoC 。之前寫React的時候就有用過mobx,很是喜歡 , 現在發現提供了dart版本,于是來學習一下. 也許會成為最好用的狀態管理工具呢介紹MobX只是一個狀態管理庫,可以很容易地將應用程序的被...

    2019-05-17 12:24:21 3920 5

    原創 Android混入Flutter以及Android與Flutter通信

    從零開始首先,創建一個新的項目文件夾用來存放Android項目和flutter的項目.原生的Android項目我給它命名為AndroidWithFlutterProject.然后創建一個flutter 的 module項目,我命名為flutter_with_android1 :看提示也知道,這個Module就是為了混合進原生的.創建好之后,我們的項目文件夾就變成了這個樣子:二者在同...

    2019-03-27 13:17:22 1222

    原創 Dart 數據類型

    Dart的所有東西都是對象。它們都繼承自Object,默認是都是null。Dart中支持以下數據類型:Number 數值型String 字符串Boolean 布爾型List 數組Map 鍵值對Runes ([String]的符文(整數Unicode代碼點))數值型 numDart中提供了兩種數值類型, 分別是整型int和浮點型double.void main() { ...

    2019-03-15 19:32:49 2134

    原創 flutter 持久化存儲-----數據庫sqflite

    Flutter中持久化存儲數據有多種方案, 一般常用的有 shared_preferences 和 sqfiteshared_preferences: 包含NSUserDefaults(在iOS上)和SharedPreferences(在Android上),為簡單數據提供持久存儲。數據以異步方式持久保存到磁盤。sqflite: 是一款輕量級的關系型數據庫,類似SQLite. 支持iOS...

    2019-03-13 16:28:54 8555 3

    原創 flutter 修改后臺地址并自動打包腳本

    腳本內容:@echo off setlocal enabledelayedexpansion set file=D:\Project\sale_aggregator_app\lib\common\constants.dartset &quot;file=%file:&quot;=%&quot; for %%i in (&quot;%file%&quot;) do set file=%%~fi echo. set replaced=t...

    2019-03-04 12:04:07 1161

    原創 顏色透明度 16進制對應表

    一、顏色透明度和十六進制對應的表格:透明度16進制100%099%398%597%796%0A95%0D94%0F93%1292%1491%1790%1A89%1C88%1E87%2186%2485%2684%2983%2B82%2...

    2019-01-17 16:30:09 2475

    原創 flutter 分享插件 : flutter_share_me

    已經開始用flutter做項目了 , 最近項目里有個需求 , 分享應用和商品(沒錯,電商類app) 到facebook,twitter,以及whatsapp.在pub上找了一圈,有倆插件有分享功能, 但不符合要求,于是自己花點時間寫了一個.目前只支持Android(我并沒有Mac).非常歡迎大家提交pull request和反饋. 一起完善代碼!支持分享到facebook , twitter...

    2018-12-13 15:29:33 5731 6

    轉載 Android apk打包命名規則

    摘要:前言在日常的開發過程中,許多剛入行的開發者在apk打包命名、應用迭代版本的檔案留存管理上都比較混亂——產生這些問題的原因無外乎以下兩種:一是之前沒有相關的操作經驗、頭尾不能兼顧;一是公司沒有制定對應的規范、無有效參照范例。當然,所謂的規范在業內不會存在唯一的標準與格式(對于規范的理解,本人認為是相對容易讓大眾接受、理解、掌握的行為準則),所以,本文的目的在于探討、交流、引導,還望各位不吝賜教...

    2018-11-12 14:21:56 1873

    翻譯 React Native集成Touch ID和Face ID

    前言:使用Touch ID也稱為指紋身份驗證在移動應用程序中非常流行。Touch ID功能可保護應用程序并使其成為用戶的無縫身份驗證流程。許多銀行應用程序,如美國銀行,發現,大通,使用Touch ID身份驗證,實現安全和無縫的身份驗證。用戶無需在每次登錄時鍵入長密碼,只需允許他們使用Touch ID登錄即可。使用iPhone X,我們可以使用Face ID身份驗證。Touch ID和Fac...

    2018-11-12 14:20:23 2963

    原創 flutter自定義View(CustomPainter) 之 canvas的方法總結

    畫布canvas畫布是一個矩形區域,我們可以控制其每一像素來繪制我們想要的內容canvas 擁有多種繪制點、線、路徑、矩形、圓形、以及添加圖像的方法,結合這些方法我們可以繪制出千變萬化的畫面。雖然,畫布可以畫這些東西,但是決定這些圖形顏色、粗細表現的還是畫筆。畫筆PaintPaint非常好理解,就是我們用來畫圖形的工具,我們可以設置畫筆的顏色、粗細、是否抗鋸齒、筆觸形狀以及作畫風格。通...

    2018-11-08 13:28:47 16889

    原創 flutter 打包apk

    前言完成項目時,我們需要將項目打包成一個apk,方便測試以及發布版本.并且發布版本還需要簽名,今天把這一系列操作記錄下來.App簽名創建 keystore如果您有現有keystore,請跳至下一步。如果沒有,請通過在運行以下命令來創建一個:keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validit...

    2018-11-07 17:11:38 8462 9

    原創 CSDN1024勛章獲得方法

    這里寫自定義目錄標題歡迎使用Markdown編輯器新的改變功能快捷鍵合理的創建標題,有助于目錄的生成如何改變文本的樣式插入鏈接與圖片如何插入一段漂亮的代碼片生成一個適合你的列表創建一個表格設定內容居中、居左、居右SmartyPants創建一個自定義列表如何創建一個注腳注釋也是必不可少的KaTeX數學公式新的甘特圖功能,豐富你的文章UML 圖表FLowchart流程圖導出與導入導出導入歡迎使用Ma...

    2018-10-24 22:07:09 2923 8

    原創 Flutter中的自定義View的基本流程和相關知識

    前言我們都知道官方有很多的Widget供我們使用,但它提供的再多,也無法滿足產品和UI的需求,當然,谷歌官方也肯定想到了這一點,所以在flutter中,也是支持自定義View的。在Flutter中與繪制相關的是在Painting層次,具體見下圖:這張Flutter架構圖我相信大家肯定在不同的文章中見過很多次了。和Flutter自帶的Wdiget一樣,自定義的Widget也會經過Skia...

    2018-10-18 15:15:11 2991

    原創 用flutter寫一個精美的登錄頁面

    先看效果圖;源代碼已上傳到githubloading…

    2018-10-14 00:41:10 30009 4

    翻譯 flutter概念介紹之 Widget - State- BuildContext - InheritedWidget

    本文介紹了Flutter應用程序中Widget,State,BuildContext和InheritedWidget的重要概念。特別注意InheritedWidget,它是最重要且記錄較少的小部件之一。難度:初學者前言Flutter中Widget,State和BuildContext的概念是每個Flutter開發人員需要完全理解的最重要概念之一。但是,文檔很龐大,并不總是清楚地解釋這個概...

    2018-10-11 18:09:02 6286

    java課程設計

    1、 自定義類說明: (1)類名:MainTest 作用:主類,構建主界面 繼承的父類:Jframe 主要實現接口:ActionListener 主要成員變量: private JPanel ContentPane; private JButton Insert = new JButton(); private JButton Select = new JButton(); private JButton Update = new JButton(); 內部類:MainTest_actionPerformed,主頁面的事件監聽。 jenter_ actionPerformed,按鈕的事件監聽。 主要成員方法: public MainTest() public static void main(String[] args) (2)類名:Insert 作用:實現添加個人信息 繼承的父類:Jframe 主要實現接口:ActionListener 主要成員變量: private JPanel ContentPane; private JLabel jlab1 = new JLabel(); private JLabel jlab2 = new JLabel(); private JLabel jlab3 = new JLabel(); private JLabel jlab4 = new JLabel(); private JLabel jlab5 = new JLabel(); private JLabel jlab6= new JLabel(); private JLabel jlab7 = new JLabel(); private JLabel jlab8 = new JLabel(); private JTextField jtextfield1 = new JTextField(); private JTextField jtextfield2 = new JTextField(); private JTextField jtextfield3 = new JTextField(); private JTextField jtextfield4 = new JTextField(); private JTextField jtextfield5 = new JTextField(); private JComboBox jcombobox1 = new JComboBox(); private JComboBox jcombobox2 = new JComboBox(); private JTextArea jtextarea = new JTextArea(); private JButton sure = new JButton(); 內部類:sure_actionperformed,按鈕的事件監聽,實現對數據的插入。 主要成員方法:public Insert(); (3)類名:Update 作用:對個人信息進行修改。 繼承的父類:Jframe 主要實現接口:ActionListener 主要成員變量: private JPanel ContentPane; private JLabel jlab1 = new JLabel(); private JLabel jlab2 = new JLabel(); private JLabel jlab3 = new JLabel(); private JLabel jlab4 = new JLabel(); private JLabel jlab5 = new JLabel(); private JTextField jtextfield1 = new JTextField(); private JTextField jtextfield2 = new JTextField(); private JTextField jtextfield3 = new JTextField(); private JTextField jtextfield4 = new JTextField(); private JButton sure = new JButton(); private JButton upda = new JButton(); 主要成員方法: public Update() public void actionPerformed(ActionEvent e) (4)類名:Select 作用:查詢學生個人信息 繼承的父類:Jframe 主要實現接口:ActionListener 主要成員變量: private JTextArea taInfo=new JTextArea(); private JPanel panel=new JPanel(); private JTextField jtextfield1=new JTextField(); private JButton jbutton=new JButton("查詢"); private JLabel jlabel=new JLabel("學號"); 主要成員方法: public Select() public void actionPerformed(ActionEvent e)

    2014-04-02

    java學生信息管理系統源代碼

    java學生信息管理系統源代碼&_4

    2014-04-02

    java_ee_api中英文對照版

    java_ee_api中英文對照版 JavaTM Platform Enterprise Edition, v 5.0 API Specifications

    2015-09-05

    java五子棋小游戲

    內含 程序原代碼 jar包(可雙擊直接進入游戲) word功能描述文檔

    2015-08-29

    __卓原的留言板

    發表于 2020-01-02 最后回復 2020-04-26

    空空如也
    提示
    確定要刪除當前文章?
    取消 刪除
    多乐彩