关于魅族机型适配问题
2016-01-18 10:35
387 查看
关于魅族机型适配问题
一、魅族hold 下拉悬停功能的屏蔽
魅族自带的下拉悬停功能有时用起来体验太差,Android开发中很多地方会碰到与设计想冲突的地方一般如:ListView ScrollView 等可下滑控件操作是会碰到,如需选择性屏蔽可通过如下API实现:
* .setOverScrollMode(View.OVER_SCROLL_NEVER);
二、魅族SmartBar适配
魅族的SB(SmartBar)控件众所周知,对于开发者而言很多地方真是坑的不要不要的最近开发中遇到的,是下方弹出的pop窗口底部按钮被遮挡问题
就此采取一些魅族官方给出的方案:
#
通过反射调用魅族官方API ,判断是否含有SmartBarprotected boolean hasSmartBar() { try { // 新型号可用反射调用Build.hasSmartBar() Method method = Class.forName("android.os.Build").getMethod( "hasSmartBar"); return ((Boolean) method.invoke(null)).booleanValue(); } catch (Exception e) { } // 反射不到Build.hasSmartBar(),则用Build.DEVICE判断 if (Build.DEVICE.equals("mx2")) { return true; } else if (Build.DEVICE.equals("mx") || Build.DEVICE.equals("m9")) { return false; } return false; }
对含有SmartBar的机型进行调空适配,这个因人而异不给出代码了,可以设置弹窗的起始高度,也可调正按钮高度等
有一点又需注意,在魅族5.0系统中,魅族在个人设置中给出了SmartBar的控制开关,在SmartBar关闭的情况下,上述判断返回true
比较坑爹,因此我又对不同机型和系统做出判断和处理,5.0的以后的机型独立配置了一个UI界面,是的在包含SmartBar的情况下也较为美观,如大家有好的解决方法欢迎给出,感激不尽!调用机型的API在下给出,具体的代码个人把控
Log.d("fmer", "手机型号: " + android.os.Build.MODEL + ",\nSDK版本:" + android.os.Build.VERSION.SDK + ",\n系统版本:" + android.os.Build.VERSION.RELEASE);
如需更多的魅族适配处理,可以参考魅族官方的 Meizu SmartBar开发指南 和他的Demo查看
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories