androidで枠線を作る方法
androidのレイアウトに枠線は無い(と思う)。
LinearLayoutを重ねるのはアホなので背景に枠線を書き加えることにした。
/** * @param vg * 枠線を設定するViewGroup * @param width * LinearLayoutに設定するwidth * @param height * LinearLayoutに設定するheight * @param line_width * @throws Exception */ public static void setFrame(LinearLayout ll, Integer width, Integer height, Integer line_width) throws Exception { Drawable background = ll.getBackground(); Bitmap bmp; if(background != null){ throw new Exception("ListElementで背景画像有りの場合不具合"); //bmp = ((BitmapDrawable)background) //.getBitmap(); }else{ bmp = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); } Canvas canvas = new Canvas(bmp); Paint paint = new Paint(); paint.setAntiAlias(true); // 枠線を作成する。 { paint.setStrokeWidth(line_width); paint.setColor(Color.argb(255, 0, 0, 0)); paint.setStyle(Paint.Style.STROKE); Path path = new Path(); path.moveTo(0, 0); path.lineTo(0, height); path.lineTo(width, height); path.lineTo(width, 0); path.close(); canvas.drawPath(path, paint); } ll.setBackgroundDrawable(new BitmapDrawable(bmp)); ll.setLayoutParams(new LinearLayout.LayoutParams( width, height)); }
結局使用しなかった。