2017/2/28

Xamarin.Forms 教學系列文(六.壹)Button




學習目標
  • Button Clicked 事件
  • sender 就是物件!
  • StyleId 可為 View 物件唯一 Id

一般來說 Visual Elements 的特性可以簡單區分為 "純顯示" 和 "互動"。
例如,Label 就是一個 "純顯示" 的元件; 而最常見的 "互動" 元件就是 Button

當手指按下 Button 時,手機會先給予使用者畫面上的回饋,等手指移開 Button 後,Clicked 事件才會被觸發。

若在 Clicked 事件內需要取得更多資訊時,可以使用事件參數(EventArgs)來傳遞資料。

2017/2/25

Xamarin.Forms Previewer - Xaml 預覽器 with Visual Studio 2015


昨天上班聽同事說 Visual Studio 有 Xaml 預覽器這種神奇的東西... (一直沒發現...)

手癢的我下班回家就想玩看看,想不到要求還滿多的...

要滿足以下三點才能招喚預覽器:
  1. Android SDK API 25 以上
  2. JAVA JDK 1.8 以上
  3. 專案要先建置

這一篇文章就帶大家一步一步滿足他...

2017/2/24

Xamarin.Forms 教學系列文(五)Size單位 - device-independent units & StartTimer!


學習目標
  • 了解 Xamarin 的單位 Device-independent Units
  • SizeChanged 事件
  • 如何判斷目前手機方向,portrait 或 landscape
  • Device.StartTimer 方法

前四章已經有出現一些使用單位的屬性:
  • iOS 狀態列高度是 20
  • BoxView 預設寬高是 40
  • Frame 內緣的間距 (Padding) 是 20
  • StackLayout 的物件間距 (Spacing) 是 6

這些尺寸的 "單位" 到底是什麼??

這小節讓我們從最常見的螢幕單位 - DPI,來討論為何我們在 Xamarin.Forms 需要一個特殊的單位,原文書上有更多詳細的解釋 (更多英文),有興趣的可以翻來看看。

2017/2/20

Xamarin.Forms 教學系列文(四.貳)Frame、BoxView & 讀取文字資源檔




學習目標
  • Frame - 自帶邊緣陰影的容器。
  • BoxView - 可填滿顏色的矩形。
  • 如何讀取文字 (.txt) 實體檔。

這小節介紹兩個滿常用到的畫面元件,Frame BoxView

先來介紹 Frame:

2017/2/18

Xamarin.Forms 教學系列文(四.壹)StackLayout & ScrollView




學習目標
  • StackLayout - 物件堆疊排放
  • ScrollView - 畫面捲動
  • Expand 屬性在 StackLayout 內的使用

如果你已經拜讀完 三.壹 章,或許你會很興奮的開啟 VisualStudio ,接著把全部的顏色列出來寫在不同的 Lable 放到 ContentPage 內。

BUT,就是這個 BUT,會發現全部的 Label 都疊在同一個位子上...

小弟我寫網頁多年... textbox、div、button,物件不是放到畫面上就會自己往後排隊放好嗎...?

Xamarin.Forms 物件的排版有一些特定的 "畫板" 需要使用:
  • AbsoluteLayout
  • Grid
  • RelativeLayout
  • StackLayout

這一小節先來介紹 StackLayout

2017/2/13

Xamarin.Forms 教學系列文(三.貳)文字屬性 & 格式化



接續上一節繼續玩弄文字...

學習目標
  • Label 屬性設定
  • Label 內文字分段設定屬性

Label,其文字大小或字型,通常預設是各個平台的預設值,不過 Label 也定義了一些屬性,讓開發者可以客製化。

Label 有三種屬性可以更改:
  • FontFamily of type string
  • FontSize of type double
  • FontAttributes of type FontAttributes, 有三個成員可以使用:None, Bold, Italic

2017/2/4

Xamarin.Forms 教學系列文(三.壹)文字排版 & 顏色


學習目標
  • Label、Text 的排版
  • 如何建立 Color 物件

這一章節來玩弄一下文字...

當我們要顯示一大段落的文字時,最簡單的方式就是全塞在 Label 的 Text 內...