跳到主要內容

[Android] 使用shape自訂形狀及陰影

shape可以定義下面四種類型的形狀:
    rectangle-矩形(直角矩形、圓角矩形),默認的形狀
    oval-橢圓形、圓形
    line-線形(實線、虛線)
    ring-環形、環形進度條

rectangle


執行結果:



如果填色要填入漸層色的話,需要將solid標籤改成gradient標籤,用法如下:
執行結果:



oval

執行結果:


oval和ring的漸層有三種類型(android:type):linear(線性)、radial(放射性)、sweep(掃描)

如果漸層效果為radial(放射性)的話,必須加上android:gradientRadius屬性(指定漸層的半徑)。
執行結果:

line

線的高度是透過stroke的android:width屬性設置,而size的android:height是定義整個形狀區域的高度,所以size的height必須大於stroke的width
執行結果:

ring

屬於ring的屬性:
    android:innerRadius 內環的半徑
    android:thickness 環的厚度
    android:useLevel 一般設為false,要不然環可能會無法顯示
執行結果:

將環設計成環狀進度條的樣式:

1,在shape標籤外再加上rotate標籤
rotate屬性:
    android:fromDegrees:開始旋轉的角度位置
    android:toDegrees:結束時轉到的角度位置
    android:pivotX:旋轉起點的X軸座標位置,可以是數值、百分比、百分比p
    android:pivotY:旋轉起點的Y軸座標位置,可以是數值、百分比、百分比p

2,在style.xml裡加上style樣式
3,在activity_main.xml裡加上progressBar標籤
執行結果:


Shape加上陰影的方法

將selector標籤改成layer-list標籤,並在原本形狀的item標籤上面再加上一組item標籤,作為陰影的樣式
一定要設置陰影和物件的offset,要不然陰影和物件會重疊,會看不到效果。
執行結果:





參考資料:Keegan小钢

留言

這個網誌中的熱門文章

[iOS] Objective-C 自訂UITableViewCell樣式

Step1 在Storyboard中拉出TableView和按下TableView Cell後要切換的View,並設定對應的class檔 TableView連結至ListController類別,並設定Storyboard ID為ListController 要切換的View連結至ViewController類別,並設定Storyboard ID為viewController Step2 新增CustomCell.xib 新增File(File → New → File...),選擇View,並將檔案命名為CustomCell 開啟CustomCell.xib,把預設的View元件刪掉,然後從元件庫拖曳Table View Cell,並拉好想要的Cell內容排版 Step3 新增自訂Objective-C class給這個NIB檔 新增File(File → New → File...),選擇Cocoa Touch class 需要繼承UITableViewCell Step4 回到CustomCell.xib,將Class連結到CustomTableViewCell Step5 在CustomTableViewCell.h檔中,設定元件變數 Step6 在ListController.h中設定TableView的元件變數,且宣告一個陣列,負責儲存表格上要呈現的資料 Step7 在ListController.m  的viewDidLoad方法中設定TableView的兩個輸出口:dataSource、delegate,並初始化陣列資料 dataSource所連結到的View Controller用來提供表格上Cell的內容 delegate為指定哪一個View Controller需要處理使用者在表格上的操作 Step8 在ListController.m中,實作tableView:numberOfRowsInSection:方法 -通知Table View需要產生多少個Cell(儲存格)來顯示資料 Step9 在ListController.m中,實作tableView:cellForRowAtIndexPath:方法

[Android] 更改Spinner(下拉式選單)字體樣式

下拉式選單的選單樣式 Step1 在activity_main.xml檔案中新增Spinner標籤 Step2 在layout中新增myspinner.xml 在檔案中設定下拉式選單的TextView樣式 (文字顏色、大小等) 註:增加padding可以讓選單的間距變寬 Step3 在MainActivity.java檔案中設定Spinner 宣告spinner,並建立string array放入下拉選單中選項內容 建立ArrayAdapter,放入我們想要顯示樣式及選項內容 如果是想要用Android內建的樣式,只要把 R.layout. myspinner 改回 android.R.layout. simple_list_item_1 就可以了 最後設定Spinner的Adapter為剛剛我們建立的ArrayAdapter 完整的程式碼: 執行結果: