終於讓手上的HTC EVO 4G可以跑Delphi XE5開發的Android程式了!

DelphiXE5AndroidVersion

在上次參加iOS Dev Club開發聚一直飲恨的地方是沒辦法Demo Android版本的程式出來,因為手中的Android手機是版本2.1的HTC EVO 4G,在Embarcadero的官方網站中有提到Target Android Versions要在2.3.3之後才行(大哭….)。今天終於心一橫跑到了大陸有名的網站 ROM之家 找到 HTC EVO 4G的ROM然後刷機了!

果然刷完機之後,就可以跑昨天寫的這篇。 然後大家可以看到一點是,在沒有更改程式的情況下,Delphi XE5把元件的風格轉成Android的風格了。

Delphi XE5 for Android 影片位置 : http://youtu.be/eiV8uAl0vBY

Delphi XE5實作仿Facebook Slide Menu

螢幕快照 2013-10-01 上午9.30.24

既然Delphi XE5可以開發Android、iOS的程式,那可不可以設計像Facebook一樣的選單呢(如上圖)?答案是可以的!

接下來就手把手教大家操作。

1首先開一個空的Mobile Project,在上面放一個ListBox元件,將Aligh設定為alClient

螢幕快照 2013-10-01 上午8.55.27

2接下來回到ListBox元件按右鍵進入 Item Editor,建立如下圖的選單

螢幕快照 2013-10-01 上午8.59.12

3.接下來再放上一個Panel,一樣把Aligh設定成alClient,接著在上面放一個ToolBar

螢幕快照 2013-10-01 上午9.01.41

螢幕快照 2013-10-01 上午9.02.01

4.在ToolBar上放一個SpeedButton,設定StyleLookup為detailstoolbuttonbordered

螢幕快照 2013-10-01 上午9.02.45

螢幕快照 2013-10-01 上午9.03.18

5.回到Panel元件,設定Position的X ,下拉選擇 Create New TFloatAnimation

螢幕快照 2013-10-01 上午9.49.49

6.接著在SpeedButton 的 OnClick事件

[pascal]
var
FloatAnimationX: single;
begin
FloatAnimationX:=Self.ClientWidth – 60;

if (panel1.Position.X=FloatAnimationX) then begin
FloatAnimation1.StartValue:= FloatAnimationX;
FloatAnimation1.StopValue:= 0;
end
else begin
FloatAnimation1.StartValue:= 0;
FloatAnimation1.StopValue:= FloatAnimationX;
end;

<del datetime="2013-10-01T09:44:53+00:00">AnimateDrawer</del>FloatAnimation1.Start;
end;
[/pascal]

結果就會變成如下圖了!

螢幕快照 2013-10-01 上午9.27.52
如果你要在Panel加上陰影的話,只要在Panel加上即可
螢幕快照 2013-10-01 上午9.28.40

螢幕快照 2013-10-01 上午9.29.30

螢幕快照 2013-10-01 上午9.30.24

 

GitHub原始碼 https://github.com/superlevin/delphixe5facebookslidemenu

Delphi XE5 正式發表-支援Android、iOS、Mac、Win的開發利器

其實壽山我自從Delphi 7之後,就很少follow Delphi的相關訊息。主要是後面的產品不是這麼的令人驚艷!

不過在FireMonkey這個框架出現後,就開始注意到Delphi這個開發工具的雄心壯志~毅然拋棄了多年且相當成熟的VCL,改投注在跨平台、跨裝置的FireMonkey上,就知道這開發工具準備大展身手了!

Click to see full-sized image

果然從XE2開始,FireMonkey就不斷進化~除了有64位元的程式外,也可以開發在Mac OS、iOS上面跑的程式…

到了XE4時,iOS開發已經相當純熟,也有不少軟體公司開始使用XE4開發app且成功上架~昨天XE5正式release 後,也看到Embarcadero依照著預定的roadmap,將delphi支援Android開發給呈現出來。

專案直接支援android、iOS Platforms

螢幕快照 2013-09-13 上午11.08.45

 

iOS、Android User Permissions直接以勾選方式

螢幕快照 2013-09-13 上午11.11.30

設計介面的外觀還可以讓您選是那個機器(或是螢幕大小)

螢幕快照 2013-09-13 上午11.08.58

雖然昨天台中場在李維大師的解說下,可以看得出仍有一些小小的bug在,不過整體而言可以看得出Delphi XE5已經很成功的開發出mobile的solution。

接下來有空的時間,也得好好摸索它,也希望有機會介紹給大家 :)

Android建立Phonegap程式(一)

這幾天接觸phonegap這個框架,趁機會記錄一下,以免以後老人痴呆忘了!

Android使用phonegap有二種方式:

一種是使用命令列建立。

一種是直接copy&paste及手動設定。

命令列建立方式:

Windows

1.設定JDK路徑(假設路徑是 C:\Program Files\Java\jdk1.6.0_25)

相關下載:JDK下載網址

set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_25

set PATH=%JAVA_HOME%\bin;%PATH%

2.設定APACHE ANT路徑(假設路徑是C:\apache-ant-1.8.4)

相關連結:Apache Ant (下載後解壓縮)

set ANT_HOME=C:\apache-ant-1.8.4

set PATH=%ANT_HOME%\bin;%PATH%

3. 下載PhoneGap

相關連結: PhoneGap (下載後解壓縮)

切換PhoneGap解壓縮後的\lib\android\bin 下

cd c:\phonegap-2.3.0\lib\android\bin

接下來,就可以建立專案,語法是 /create <project_folder_path> <package_name> <project_name>
三個參數依序為:

1.專案資料路徑:例如:c:\projects\test1

2.package名稱:例如:com.superlevin.test1

3.專案名稱(不能有空白唷):例如:test1

create  c:\projects\test1 com.superlevin.test1 test1

如果都沒有問題的話,就可以在c:\projects裡看到test1的目錄,導入到Eclipse就可以了。

 MacOS

1. 配置 bash_profile檔案

打開終端機,輸入 touch ~/.bash_profile; open ~/.bash_profile

會出現一個文字編輯的檔案

加入android sdk的路徑(例如:/Users/superlevin/Documents/androidsdk/adt-bundle-mac-x86_64/sdk)

在文字編輯裡加上下列文字

export PATH=${PATH}:/Users/superlevin/Documents/androidsdk/adt-bundle-mac-x86_64/sdk/platform-tools:/Users/superlevin/Documents/androidsdk/adt-bundle-mac-x86_64/sdk/tools

接著存檔。

回到終端機畫面,執行配置檔

輸入 source ~/.bash_profile

這樣一來,就配罝了含Android SDK的路徑。

接著下載phonegap解壓縮後,進入終端機切換到lib/android/bin目錄(例如:/Users/superlevin/Documents/phonegap-2.3.0/lib/android/bin),輸入

./create /Users/superlevin/Documents/helloworld com.levin.helloworld helloworld

最後打開Eclipse匯入就可以了