2012-02-17 16 views

答えて

0

私はこのような要素が欲しいのと同様の状況を抱えています。 通常のListAdapterなどで、要素の40dpのような高さをdpに設定することは、(あまり良くない)解決策です。

fill_parentは無視されるようです。

幸運を祈り、 ティム

0

水平方向とのLinearLayoutを作成するには、これはページ全体のためのものであり、その内側に縦の破線のためにそれらのいずれかの2つの線形レイアウトを作成し、その線形レイアウト内のリストを作ります'|'と ''。

+0

その内側に、あなたは主内側3つの線形レイアウトを作成して、画面の中央に点線の線形レイアウトを言いたい、全体のレイアウトはのLinearLayoutだろう、私は点線の垂直線を望む明確 – user1108995

+0

を教えてください1。中央の線形レイアウトでは、それぞれが2つのビューを持つ線形レイアウトのリストを作成し、1つのビューには "|"もう一方のビューには ""が含まれています。だから、あなたがそれらのすべてを一緒に置くとき、それは破線になるでしょう。また、中間線形レイアウは、垂直方向を向いている必要があります。 –

2

編集...パスを作成し、そのパスを描画します。

Paint paintDots = new Paint(); 
paintDots.setStyle(Paint.Style.STROKE); 
PathEffect pe = new DashPathEffect(new float[] {5, 20}, 0); 
paintDots.setPathEffect(pe); 
paintDots.setStrokeWidth(5); 

Path p = new Path(); 
p.moveTo(100, 0); 
p.lineTo(100, 200); 
canvas.drawPath(p, paintDots); 

確かにこれより良い方法がありますが、私はちょうど0幅の矩形を作った。このアプローチには限界があります。私は、 "長方形"の側面が衝突した場合に、パスエフェクトのギャップを大きくすることをお勧めします。

Paint paintDots = new Paint(); 
paintDots.setStyle(Paint.Style.STROKE); 
PathEffect pe = new DashPathEffect(new float[] {5, 20}, 0); 
paintDots.setPathEffect(pe); 
paintDots.setStrokeWidth(5);    

canvas.drawRect(new Rect(100,0,100,200), paintDots); 
関連する問題