Android之畫虛線技巧

2021-09-11 10:51:48 字數 847 閱讀 7587

ui設計圖中,經常需要畫水平和豎直的虛線,本文實現虛線效果。

在drawable中建立dash_horizontal_view.xml檔案

<?xml version="1.0" encoding="utf-8"?>

在布局中引用這個shape檔案,完成水平虛線的繪製。

有幾個關鍵點:

dashwidth 是指虛線中每乙個實線的寬度,dashgap 是指虛線中每乙個間隔的寬度,如果dashwidth 和dashgap 中有乙個為0,那麼這條線就是一條實線。width是指這條線的寬度,在橫的虛線上體現出來就是這條線的豎直方向的高度。

把這個drawable作為乙個view的背景時,需要設定view的layertype 為software,不然在真機上顯示出來是一條實線。

作為背景的view的layout_height要超過drawble的stroke的width,不然顯示不出來。

在drawable中建立dash_vertical_view.xml檔案

<?xml version="1.0" encoding="utf-8"?>

設定了fromdegress之後,會先畫一條水平虛線,然後再瞬間順時針旋轉90度角。原理是先畫一條水平線,然後再旋轉,那麼view的寬度只有2dp,他就只能畫2dp,所以旋轉後也就是乙個點。

設定偏移量的屬性,我們將rotate節點放於乙個item節點下面,然後給item設定左右都為-300dp的偏移量,這樣他在先畫水平線的時候,由於負的偏移量(就和負的margin一樣),就可以畫出400dp長的線,然後再旋轉,就可以得到一條豎直虛線。

android開發 畫虛線

public class dashview extends view public dashview context context,attributeset attrs override protected void onmeasure int widthmeasurespec,int heigh...

Android 畫虛線顯示實線的BUG

畫虛線一般寫個xml 其中dashgap是空隙寬度,dashwidth是線的寬度,當dashgap也就是空隙寬度為0時,顯示一條實線。然後在background或src中引用,但在android 4.0以上版本中會有bug,發現不管dashgap設定多大,顯示的都是一條實線。解決方法 關閉硬體加速。...

WPF中畫虛線

原文 wpf中畫虛線 在wpf中,畫線的方法十分簡單,只要宣告乙個line然後新增到指定的位置就可以了,但line並不僅僅只能畫一條直線,還可以對直線進行修飾。1.line.strokedasharray屬性 strokedasharray是乙個雙精度字串,指示用於勾勒形狀輪廓的虛線和間距的樣式。2...