使用 Xamarin 开发Android UI时可能会遇到一些场景背景的问题,虽然可以利用多层或直接使用图片背景来完成,但这样会增加不少的资源消耗,最终导致内存溢出的情况。最好的方法还是利用内部方法或代码的方式来实现。例如我们需要实现如下截图示意的界面:
在上述截图中可以看到背景是一个环形过渡色 + 透明平铺图案组成,有了这个思路,剩下就是实现的问题了。
具体实现方式是,新增一个drawable资源,并在资源中绘制过渡色和平铺图案,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 | < item >
< shape android:shape = "rectangle" >
< gradient android:startcolor = "@color/chindpostgreenlight" android:endcolor = "@color/chindpostgreennormal" android:angle = "90" android:type = "radial" android:gradientradius = "600" >
< padding android:left = "0px" android:top = "0px" android:right = "0px" android:bottom = "0px" >
< corners android:radius = "0px" >
</ corners ></ padding ></ gradient ></ shape >
</ item >
< item >
< bitmap android:src = "@drawable/WaterMarkMain" android:tilemode = "repeat" >
</ bitmap ></ item >
</ layer-list >
|
然后将资源当做背景赋予LinearLayout即可。
Xamarin试用版下载
|