看百度视频检索时的界面,如下:
我考虑将其用在自己的应用中使用起来,并且可以是实现可配置,主要思路是这样,
首先写一个定义检索条件的json文件:
[
{
"name": "上映时间",
"key": "ReleaseTime",
"value": [
{
"checked": true,
"condition": "2010年以前",
"value": "<2010"
},
{
"checked": false,
"condition": "2011年",
"value": "=2011"
},
{
"checked": false,
"condition": "2012年",
"value": "=2012"
},
{
"checked": false,
"condition": "2013年",
"value": "=2013"
}
]
},
{
"name": "上映地区",
"key": "Area",
"value": [
{
"checked": true,
"condition": "美国",
"value": "=USA"
},
{
"checked": false,
"condition": "东南亚",
"value": "=ESAsia"
},
{
"checked": false,
"condition": "日本",
"value": "=Japan"
},
{
"checked": false,
"condition": "大陆",
"value": "=China"
},
{
"checked": false,
"condition": "欧洲",
"value": "=Europe"
}
]
},
{
"name": "类型",
"key": "Type",
"value": [
{
"checked": true,
"condition": "爱情片",
"value": "=AiQing"
},
{
"checked": false,
"condition": "动作片",
"value": "=DongZuo"
},
{
"checked": false,
"condition": "惊悚片",
"value": "=JingSong"
},
{
"checked": false,
"condition": "科幻片",
"value": "=KeHuan"
},
{
"checked": false,
"condition": "动画片",
"value": "=DongHua"
}
]
},
{
"name": "演员",
"key": "Actor",
"value": [
{
"checked": true,
"condition": "史泰龙",
"value": "=史泰龙"
},
{
"checked": false,
"condition": "施瓦辛格",
"value": "=施瓦辛格"
},
{
"checked": false,
"condition": "成龙",
"value": "=成龙"
},
{
"checked": false,
"condition": "喜羊羊",
"value": "=喜羊羊"
},
{
"checked": false,
"condition": "灰太狼",
"value": "=灰太狼"
}
]
}
]
上述json串定义了需要显示的检索条件,通过动态加载的方法可以实现检索盘的加载,最终的效果是这样的:
下图点击筛选,在按钮下方弹出筛选框,点击确定以后,返回检索的条件。
具体的实现过程不展示了,还是直接上代码包比较实际,主要思路就是快速实现检索盘,而不用写一大堆代码,如果检索条件变更只需要维护一个json文件就可以了。
做好底层工作,就可以无限制的减少代码行数。