这里分享一个Android的非常经典实用而且简单方便的第三方UI控件库:BottomView(小米的米UI也用到了这个)
实现功能:
可以在底部弹出的View里自定义布局;
可以自定义是否可以触摸外部消失;
可以自定义事件;
可以自定义外围背景是否透明;
可以自定义动画;
如果需要的话,可以强制为顶部View显示
BottomView.jar库文件下载地址:http://download.csdn.net/detail/jay100500/7547055
BottomView的Demo下载地址:http://download.csdn.net/detail/jay100500/7547049
用法:
1、下载BottomView.jar库文件,放到Android项目工程里的libs里
2、设置BottomView的Theme:
这2个Theme复制粘贴到你的项目的res/values/styles.xml里即可
<!--半透明背景Theme--> <style name="BottomViewTheme_Defalut"> <item name="android:windowFrame">@null</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">false</item> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@color/white</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:windowFullscreen">true</item> </style> <!--透明背景Theme--> <style name="BottomViewTheme_Transparent"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <!-- Transparent --> <item name="android:windowIsTranslucent">false</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@color/white</item> <item name="android:backgroundDimEnabled">false</item> </style>另外如果提示
<item name="android:windowBackground">@color/white</item>这里的white找不到的话,说明你项目res/values/color.xml没有新建或者没有white颜色这个值,只需在res/values/color.xml里添加
<color name="white">#ffffff</color>
这个白色值即可。
另外View的动画Theme可选,建议也复制进去,效果好一些,代码如下:
<style name="BottomToTopAnim" parent="android:Animation"> <item name="@android:windowEnterAnimation">@anim/bottomview_anim_enter</item> <item name="@android:windowExitAnimation">@anim/bottomview_anim_exit</item> </style>
res/anim/bottomview_anim_enter.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" > <translate android:duration="500" android:fromYDelta="100%p" /> </set>
res/anim/bottomview_anim_exit.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" > <translate android:duration="500" android:toYDelta="100%p" /> </set>
整体为:
2、部分核心使用代码:
BottomView bottomView = new BottomView(this, R.style.BottomViewTheme_Defalut, R.layout.bottom_view); bottomView.setAnimation(R.style.BottomToTopAnim);//设置动画,可选 bottomView.showBottomView(false);
如果想获取这个View的话,调用.getView()方法即可。
效果图之一:(可随意发挥)不懂的加我QQ 852041173
欢迎加入MtAndroid开发者QQ群:271410559
百度网盘备用下载地址:
BottomView.jar库文件下载地址:http://pan.baidu.com/s/1mg7eseG
BottomView的Demo下载地址:http://pan.baidu.com/s/1hqkRM8s
首发地址:http://www.aplesson.com/?p=400