我正在尝试使用 NinePatch 图像,水平拉伸。
正如预期的那样,我没有过多地使用 NinePatch,但确实有其他 NinePatches 图像在其他领域工作(例如,作为带有内容的视图的背景)。
我附上了我正在经历的简化版本。基本上我希望点水平平铺中心像素。图像只会水平扩展。它不包含任何其他视图。
我首先尝试只设置一个单像素垂直路径,然后也添加了一个单像素水平路径。没有不同。在 NinePatch 工具的预览面板中,它看起来很好。
根据下面的代码示例,它在 RelativeLayout 中使用。我已经包含了作为我尝试过的其他设置被注释掉的行。
track = new ImageView(context);
track.setScaleType(ScaleType.FIT_XY);
//track.setScaleType(ScaleType.FIT_CENTER);
track.setBackgroundResource(R.drawable.bg_track);
//track.setImageResource(R.drawable.bg_track);
LayoutParams trackLayout = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
//LayoutParams trackLayout = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
trackLayout.addRule(RelativeLayout.CENTER_VERTICAL);
trackLayout.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
trackLayout.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
addView(track, trackLayout);
我确定我错过了一些简单的东西,但无法弄清楚。
任何见解都值得赞赏。
蒂亚。