android畫虛線
1. android用shape畫虛線,怎麼也不顯示
一直以為android的shape能畫直線,虛線,矩形,圓形等,畫直線也就算了,用一個view設一下高度和顏色,就可以出來一條直線了。所以說這個對我來說經常不用,圓形是可以,看看我應用里的消息提示框都是這樣生成的,好了,這個不存在問題,今天想要做是一條虛線,什麼也不說了,直接上虛線的代碼:<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<!-- 顯示一條虛線,破折線的寬度為dashWith,破折線之間的空隙的寬度為dashGap,當dashGap=0dp時,為實線 -->
<stroke android:width="1dp" android:color="#D5D5D5"
android:dashWidth="2dp" android:dashGap="3dp" />
<!-- 虛線的高度 -->
<size android:height="2dp" />
</shape>
解釋的好完美,真要不是不自己試,估計一輩子都會相信這是真的了,結果是放到手機里,從來沒有出現過什麼線條,對於像我一樣追求完美的人來說,自然不會放過這一個細節,在網上找了大半天,有的小夥伴們也遇到了,並且也解決了,可是把他們的方法拿過來後,都一個也不好使,實際情況是還是不能顯示,總結一下小夥伴們的解決方法吧
1.從android3.0開始,安卓關閉了硬體加速功能,所以就不能顯示了,所以就是在 AndroidManifest.xml,或者是在activity中把硬體加速的功能關掉就可以了android:hardwareAccelerated="false"或者是view.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
2.一個小夥伴的翻譯,說什麼height要大於dashWidth才能顯示。
我都按他們的方法試了,根本都不行,
所以要想真正的實現還是老老實實的自己去畫一條虛線吧。
2. android 如何設置listview的分割線為虛線
使用Shape來畫。
在Shape的根結點設置幾何形狀android:shape=「line"
shape標簽下的stroke標簽有幾個屬性:
android:dashWidth 虛線的寬度。
android:dashGap 虛線之間的間隔即「 - - - - 」
如果不會用,可以搜索一下相關屬性。
不過4.0以後並無虛線效果,看起來還是實線,4.0以前才會顯示虛線。
3. android中使用paint怎麼畫虛線
Paint paint = new Paint ( ) ;
paint.setColor ( Color.BLACK ) ;
//設置畫直線格式
paint.setStyle ( Paint.Style.STROKE ) ;
//設置虛線效果
paint.setPathEffect ( new DashPathEffect ( new float [ ] { 3, 2 }, 0 ) ) ;
最後這句是設置虛線效果,里邊的float數組的意思是:先畫長度為3的實線,再間隔長度為2的空白,之後一直重復這個單元。這個數組的長度只要大於等於2就行,你可以設置多個數值,產生不同效果,最後這個0指的是與起始位置的偏移量。
4. android使用paint怎麼畫虛線
Paint paint = new Paint ( ) ;
paint.setColor ( Color.BLACK ) ;
//設置畫直線格式
paint.setStyle ( Paint.Style.STROKE ) ;
//設置虛線效果
paint.setPathEffect ( new DashPathEffect ( new float [ ] { 3, 2 }, 0 ) ) ;
最後這句是設置虛線效果,里邊的float數組的意思是:先畫長度為3的實線,再間隔長度為2的空白,之後一直重復這個單元。這個數組的長度只要大於等於2就行,你可以設置多個數值,產生不同效果,最後這個0指的是與起始位置的偏移量。