作为一名 Android 开发者,对于 shape 文件肯定不会陌生。但是,用时一时爽,到后面遇到缩包要求时,或者强迫症开发者不希望有重复的 shape 文件,便是有苦说不出了。
通常,我们定义 shape 文件可能会根据业务来,代表这个 shape 文件在哪里用到,举个栗子:vyg__route_search_bg_selector.xml
,开发人员看到这个 shape 文件可以知道是在路线搜索页面用到的。可是这样命名,当开发人员各自独立开发时,可能会有一大堆业务相关的 shape 文件,可能会和其他开发人员相关业务重复了。所以后面我们干脆改成这样了:vyg__shape_r2_f7f7f7.xml
,代表 2dp 的 radius,然后填充色是 #F7F7F7。如果项目设计师严格按照一套标准来设计所有的背景,这样命名一套 shape 文件可以做到复用了。可如果设计师经常换人,或者不够专业等等其他原因,这里一个颜色,那里又是另外一个颜色,或者把 2dp 的圆角变成 4dp,如此下来,shape 文件依然会很多。就像这样: