科技改變生活 · 科技引領未來
有以下2種解決辦法,個人更喜歡第二種,一勞永逸。
1,在代碼中動態指定字體配置
2,修改matplotlib配置文件,即Anaconda3Libsite-packagesmatplotlibmpl-datamatplotlibrc這個文件。
用記事本/Nodepad+等文本編輯器打開,查找到font.family ,去掉前面的"#"
然后查找font.sans-serif,去掉前面的#,并添加"Simhei"即宋體到字庫族列表中
查找axes.unicode_minus,將True改為False,作用就是解決負號'-'顯示為方塊的問題。
1)首先請準備好字體文件(要ttf后綴的),打開大神f1自帶的【文件管理】點擊【Coolpad】-【coolshow】。
2)進入【font】文件夾,把準備好的文件放在這里。
3)重啟手機打開酷秀點擊【本地字體】即可見添加的字體。
chemdraw做元素分析方法1、從View菜單中選擇“Show Crosshair”命令,繪制窗口就會出現“交叉準線”,有利于準確地繪制圖形的角度,更多相關內容請點擊“ChemDraw教程之ChemDraw交叉準線使用教程”。 2、選擇“箭頭工具”垂直繪制成坐標軸,可以通過選擇工具來旋轉箭頭方向以及更改箭頭尺寸。 3、從Drawing Elements工具箱選擇“直線”工具、“虛線”工具以及“弧”工具來繪制直線和曲線,有繪畫基礎的學習者可以使用“筆”工具直接繪制直線或曲線。 溫馨提示:若是弧工具中弧的角度太大,可以選擇括號工具中的圓括號來繪制較為平滑的曲線。 4、選擇“文本”工具繪制直線曲線變化圖中的數字以及文子信息,輸入中文時在“Font Name”選擇“宋體”,英文狀態下默認字體格式是“Times New Roman”。
這個問題就不要再問了,直接選擇 Android Studio
Android Studio,自Google2013年發布以來,就倍受Android開發者的喜愛,我們本書,就是基于Android Studio來進行案例演示的,大家都知道,Android Studio的前身是基于IntelliJ IDEA,而在此之前,我們開發Android一直以來都是以Eclipse用ADT插件的形式來開發了,可能也是Android的不斷壯大,Google決定像蘋果的Xcode或者微軟的Visual Studio一樣,也給自家的產品開發一套定制工具,所以Android Studio應運而生,現階段,Android Studio正式版已經更新到2.X版本了,各方面的性能已經很穩定了,這就是我們用它來開發的理由
1.1官方簡介既然要使用Android Studio,所以我還是建議先看一下官方的介紹,這樣,我們在后面講一些使用方法的時候,就可以輕車熟路了
1.1.1 智能代碼編輯器
Android Studio 的核心是一個智能代碼編輯器,可進行高級代碼完成、重構和代碼分析。
這款功能強大的代碼編輯器可幫助您成為更高產的 Android 應用開發者。
1.1.2 代碼模板和 GitHub 集成
新項目向導讓開始一個新項目變得前所未有的簡單。
可使用適用于不同模式(如抽屜式導航欄和視圖分頁器)的模板代碼開始項目,甚至可以從 GitHub 導入 Google 代碼示例。
1.1.3 多屏幕應用開發
構建適用于 Android 手機、平板電腦、Android Wear、Android TV、Android Auto 以及 Google Glass 的應用。
Android Studio 內全新的 Android 項目視圖和模塊支持讓應用項目和資源管理變得更加輕松。
1.1.4 用于模擬所有形狀和尺寸的虛擬設備
Android Studio 預先配置了經過優化的模擬器映像。
經過更新和精簡的虛擬設備管理器可為常見 Android 設備提供預定義設備配置文件。
1.1.5 Android 版本借助 Gradle 演進
使用同一項目為您的 Android 應用創建多個具有不同功能的 APK。
使用 Maven 管理應用依賴項。
使用 Android Studio 或命令行構建 APK。
1.1.6 總結
這款由 JetBrains 推出并廣受歡迎的 Java IDE 以 IntelliJ IDEA Community Edition 為基礎構建
基于 Gradle 的靈活構建系統
構建變體和多 APK 生成
為 Google 服務和各種設備類型提供擴展模板支持
支持主題編輯的富布局編輯器
可捕捉性能、可用性、版本兼容性以及其他問題的 Lint 工具
ProGuard 和應用簽名功能
內置對 Google 云平臺的支持,可輕松集成 Google Cloud Messaging 和應用引擎
1.2 下載安裝Android Studio的下載還是很簡單的,不光官方可以下載,還有很多國內的資源網站都是可以下載的
官方地址:http://developer.android.com/sdk/index.html
但是這里還是要注意一下下載的版本
這里MAC和Linux平臺都是只有一個下載,但是Windows,卻有三個,這里要說明一下這三個的區別了
Android Studio安裝包集成了SDK
Android Studio安裝包
Android Studio包解壓就能用
前兩個分別是一個帶有SDK,一個沒有,第三個,他不需要安裝,下載下來解壓,就可以使用了,而且他有兩個啟動器,一個32位的,一個64位的
我們以集成了SDK的安裝包為例,來演示一下怎么安裝,其實也不難,只要你雙擊打開安裝包,一直點下一步,中途會提示你是否導入項目,選擇SDK的路徑,下載一些需要的SDK支持包,就可以了,然后,我們的Android Studio就安裝完成了
1.3 配置設置一款好的IDE,強大的前提下,還得符合自己的編碼風格,所以,我們要對她進行一些設置,這樣,才能體驗到他的強大性
1.3.1 主題
Android Studio的黑色主題還是非常的符合程序員的風格的,所以很多人也會選擇這個風格,我們進入設置(工具類上扳手圖標),這里Theme默認是Default我們這里選擇Darcula,然后點擊Apply就可以應用這個黑色主題了
1.3.2 編碼風格
我們在編寫代碼的時候,一些字體顏色大小之類的都是要值得注意的地方,包括代碼顯示行數也能幫助我們調試bug
字體大小
我們進入Settings-Editor-Colors & Fonts-Font下,默認的兩種主題我們是沒辦法修改的,我們需要自定義一個主題然后就可以修改了,操作如下: 我們點擊Save As,提示你命名,你隨便寫個名字,就可以看到如圖1.3.2所示
這里的Primary font是字體,你可以選擇自己喜歡的字體,Size為字體大小,Line Spacing是行距
當然,你也可以在Colors & Fonts目錄下看到很多的設置,比如Consale Font控制臺字體大小什么的,這個這里就不多贅述了
自動導包
手動導包還是有點麻煩的,我們本著能省就省的原則,設置一下自動導包的功能,路徑為:Settings-Editor-General-Auto import選項下,勾上以下幾個選項
XML
show import popup
JAVA
insert imports on paste選擇none
show import popup
optimize imports on the fly
add unambiguous imports on the fly
C/C++
show import popup
顯示代碼行數
這個功能也是很重要的,我們可以勾選Settings-Editor-General-Appearance-show line numbers就可以了
1.3.3 智能化
這里我們可以來設置Android Studio的智能化來設置快捷鍵,自動代碼提示,自動代碼補全等功能
快捷鍵
Android Studio快捷鍵相較于Eclipse還是做了一些改動的,但是,Google做的很靈活,他提供了快捷鍵的選擇,我們進入Setting-keymap里選擇Eclipse,熟悉的快捷鍵就回來了
代碼自動提示
代碼自動提示設置起來也很方便,Eclipse上,你鼠標懸浮在代碼上會彈出提示框,但是再Android Studio默認是沒有的,因為如果電腦配置不是很高的話,這樣會讓界面很卡,如果你想打開這個功能我們可以進Settings-Editor-General,把show quick doc on mouse move勾上就可以了
不區分大小寫
Android Studio在默認是區分大小寫的,也就是你輸入代碼的時候如果你輸入小寫,可能代碼不會提示,當然,我們也是可以設置不區分的,在Settings-Editor-General-Code Completion中,Case sensitive completion選擇none就可以了
取消載入
這個功能我覺得特別棒,比如我正在做A的項目,然后關掉Android Studio,等下次進來的時候打開Android Studio他會自動載入這個A項目,但是我其實想去做B項目的,所以我們取消這個功能,讓他每次都進入主頁供我們項目選擇,也很簡單,進入Systems-System Settings下,把Reopen last project startup的勾去掉即可
1.3.4 Log
在開發中,Log是必不可少的一個環節,他可以反饋很多程序中的信息來幫助我們開發以及調試bug,所以現在網上也是有很多log的框架和工具類,在Android Studio中默認的Log其實不算是很清晰,我們可以自己給Log設置一些顏色來改變他的反饋交互,我們進入Settings-Editor-Colors & Fonts-Android Log下,我們可以看到各個等級的Log,只要我們把Use Inberited attributes的勾去掉,就可以更換顏色了,這里,提供一套我的配色方案供大家參考
VERBOSE bfb9b9
DEBUG 0374c0
INFO 4bc332
WARN c6c61e
ERROR FF0006
ASSERT a00308
1.3.5 導出/導入Settings
Android Studio每次安裝都要設置這么多配置,著實讓人頭疼,這就又引出Android Studio的一個人性化的設計了,他可以把設置到處成jar包的形式保存起來,你要是新安裝的Android Studio,可以直接導入這個jar,就不用這么浪費時間的去配置了,方法很簡單,我們菜單欄-File
import Settings 導入設置
Export Settings 導出設置
1.3.6 插件
Android Studio的插件還是非常方便我們進行開發的,不得不在一次感嘆Android Studio的強大,比如Gsonformat,butterknife等,我們這里稍微介紹一下安裝插件的幾種方式,我們進入Settings-Plugins
這里顯示的是你安裝的插件列表,下面三個按鈕分別是
install letBrains plugin… 官方插件
Browse repositories… 第三方插件
install plugin from disk… 本地插件
官方/第三方安裝
我們點擊install letBrains plugin/Browse repositories,這里是一個搜索頁面,我們以Gsonformat為例,搜索Gsonformat。然后點擊install,安裝完成之后,我們就可以在列表中看到Gsonformat的身影了,第三方插件方法是一樣的
本地插件安裝
安裝本地插件其實就是導入,插件以jar或者zip的形式存在,我們只要點擊install plugin from disk,我們選中插件即可
1.4 GradleGradle是什么?Gradle是Android Studio項目的構建系統,是以 Groovy 語言為基礎,面向Java應用為主,基于DSL(領域特定語言)語法的自動化構建工具,所以這就出現了Android Studio的項目結構和Eclipse的不一樣了,我們具體來看一下,我們在項目的Gradle scripts文件下可以看到
這些就是我們項目構建之后的一些Gradle配置清單,我們來具體的了解一下這些文件夾是干什么的
build.gradle 構建文件
build.gradle 模塊構建文件
gradle-wrapper.properties Gradle相關配置文件
proguard-rules.pro 混淆文件
gradle.propertles 配置文件
setting.gradle 設置配置文件
local.propertles sdk,ndk配置文件
而我們所要了解的也不是說全部,只要了解一下構建文件和模塊構建文件就可以,我們會看一下構建文件里面都有些什么
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
這里面,就是一個標準的Gradle構建系統的代碼,我們來看
jcenter() 存儲庫 可以更換
classpath 依賴的Gradle版本
repositories 所有項目的存儲庫
我們再來看一下模塊構建系統
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.lgl.helloandroid"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
}
這里,我們就要多關注一下了
apply plugin :聲明一個工程的類型
compileSdkVersion : 最高API
buildToolsVersion : 編譯工具版本
applicationId : 包名
minSdkVersion : 最小API
targetSdkVersion : 編譯版本
versionCode : 版本號
versionName: 版本號(細分)
buildTypes: 構建類型
minifyEnabled : 是否壓縮apk
proguardFiles getDefaultProguardFile: 混淆配置文件
dependencies : 依賴配置
compile fileTree:依賴二進制文件
compile : 遠程二進制依賴
1.5 多渠道打包國內的Android市場那么多,為了統計每個渠道的下載及其它數據統計,就需要我們針對每個渠道單獨打包,如果讓你打幾十個市場的包豈不累死了,不過我們上節看了Gradle,這就不算什么事情了,這里也就衍生出一個新詞匯——多渠道打包,顧名思義,就是一鍵打包多個渠道,關于多渠道打包使用的平臺和工具網上也是有比較多的,貌似用的比較多的是友盟,詳情大家自己去友盟的官網上看看吧!
AndroidManifest.xml中修改以下值:
meta-data修改以下的樣子:
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />123
其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定義配置的值。
build.gradle文件就利用productFlavors這樣寫:
productFlavors {
wandoujia {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
}
baidu {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"]
}
c360 {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "c360"]
}
uc {
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "uc"]
}
}
其中[UMENG_CHANNEL_VALUE: “wandoujia”]就是對應${UMENG_CHANNEL_VALUE}的值。
其實上面的代碼還是有點多余,我們可以縮減
productFlavors {
wandoujia {}
baidu {}
c360 {}
uc {}
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
}
}
1.5.1 傳統打包方式
我們來熟悉一下傳統的打包方式,用過Eclipse的同學應該知道,在Eclipse里,我們只要Export Android就可以打包一個項目,其實Android Studio的方式也是類似,菜單欄——Build——Generate Signed APK
這里要填寫的其實和Eclipse差不多的,首先是Key Store的路徑,我們沒有,所有點Create new來創建
我們把路徑,密碼什么的填好之后,按OK,現在他會幫我們自動填充了,如果沒有,你就自己輸,然后next,然后finish就可以了
我們可以到app目錄下找到我們打包的apk,同時也可以在我們指定的位置找到我們的簽名文件xxx.jks
我的公眾號【劉桂林】,每天都會推送IT相關信息。可以關注后私聊我進行提問。
有興趣可以加入我的星球:【Hi Android】 , 里面可都是我手擼的新鮮文章,還有一群互相激勵成長的小伙伴,一起成長。
很簡單的: [align=left][font=新宋體]frmChild = winform.loadForm([color=#800000]"/res/很簡單的:
frmChild = winform.loadForm("/res/frmChild.aardio")
;frmChild.成員變量的名字 = "你要指定的值"frmChild.show()
; //或者 frmChild.doModal() 彈出模態對話框你把窗體看成一個普通對象就可以了,他的成員都是可以在外部直接讀寫的。
robots