有时候代码中调用的一些api函数对api版本有要求,比如ListView的smoothScrollToPosition函数,该函数要求android api版本在8或者以上才可以使用,即要求用户的手机必须是android2.2及其以上的才行。有些同学可能会这么做
try
{
final int mVersionCode = Integer.valueOf(android.os.Build.VERSION.SDK);
Logger.d(TAG, "sdk version=" + mVersionCode);
}
catch (Exception e)
{
e.printStackTrace();
} if(mVersionCode >= 8){
mListView.smoothScrollToPosition(position);}
实际上,上述做法是不行的,在android1.6上就会崩溃,错误为找不到smoothScrollToPosition函数,确切来说,在android2.0以下都会崩溃,原因为java虚拟机启动程序的时候就会检查类信息。
解决办法如下(因为android的内部类是运行的时候动态加载的)
if(mVersionCode >= 8){
new Object() {
public void smoothScrollToPosition(ListView mListView, int position)
{
mListView.smoothScrollToPosition(position);
}
}.smoothScrollToPosition(mListView,position);
}
分享到:
相关推荐
对于每个函数《Windows API 函数参考手册》给出了相应的示例部分,这样读者在阅读相应的Win32 API函数时就能很快地了解它的具体功能和使用方法,便于更快地掌握该接口函数。, 《Windows API 函数参考手册》是从事...
vb调用API函数的声明 在VB中声明API函数有两种方法:如果我们只在某个窗体中使用API函数,我们可以在窗体代码的General部分声明它: 声明的语法是: Private Declare Function ... Private Declare Sub..... ...
使用调用外部程序函数实现API函数高级功能
以前一直以为用API函数只能调用系统的那个复制的对话框来显示进度,原来还有其他方法可以用,不过这个API只能在NT4.0及以上的版本上面才有。 在工程里添加一个模块,将以下代码复制到模块里 Private Const ...
对于每个函数《Windows API 函数参考手册》给出了相应的示例部分,这样读者在阅读相应的Win32 API函数时就能很快地了解它的具体功能和使用方法,便于更快地掌握该接口函数。 《Windows API 函数参考手册》是从事...
如何使用系统API函数实例源码
所有API函数大全(文件类、系统类、画图类等11类API函数).
Xamarin android调用web api入门示例
vb调用api函数工具软件,可查找API函数,软件包含数百个VB调用API函数实现各种功能
使用qt creator如何加载.so库来调用其中的api函数 使用qt creator来开发QT程序时,如果用到了三方库.so文件,如何加载他?
LabVIEW调用WindowsAPI函数实现VI窗口置顶,步骤清晰,内容详细,你值得拥有
APISPY有什么软件可以监视exe调用了什么api函数
使用 VC++ 调用微软蓝牙 API 函数的示例代码。可以使用 VC++6.0 至 VC++2010 编译代码
Android调用百度地图api 自动定位,获取中心位置的坐标,根据坐标获取地理信息,标注地理信息
API大全_API函数大全_API函数使用说明
android常用的API接口调用
powerbbuilder调用api函数详解,
powerbuilder9.0API函数调用打印控制
本文以一个具体的例子说明如何在使用高API level的方法时处理好兼容性问题。 例子:根据给出路径,获取此路径所在分区的总空间大小。 在安卓中的文件存储使用参考中提到: 获取文件系统用量情况,在API level 9及其...
ODBC API编程详解,及其API函数使用详解