Java 如何在可能的情况下使用API级别8类,而在其他情况下什么都不做

Java 如何在可能的情况下使用API级别8类,而在其他情况下什么都不做,java,android,reflection,Java,Android,Reflection,我的Android应用程序中有一个自定义视图,它使用scalegestruedetector.simpleOnScalegestrueListener来检测用户何时希望通过两个手指的捏入或捏出来缩放视图。在我尝试在安卓2.1设备上测试之前,这是非常有效的。在安卓2.1设备上,由于找不到类,它会立即崩溃 我想在2.2+上支持收缩缩放,默认为无收缩缩放好吧,你可以获得scalegestruedetector源代码并放入你的项目,将其作为你自己的类,并使用它来代替系统scalegestruedetec

我的Android应用程序中有一个自定义视图,它使用scalegestruedetector.simpleOnScalegestrueListener来检测用户何时希望通过两个手指的捏入或捏出来缩放视图。在我尝试在安卓2.1设备上测试之前,这是非常有效的。在安卓2.1设备上,由于找不到类,它会立即崩溃


我想在2.2+上支持收缩缩放,默认为无收缩缩放好吧,你可以获得
scalegestruedetector
源代码并放入你的项目,将其作为你自己的类,并使用它来代替系统
scalegestruedetector
,这可以避免android 2.2及以下版本


这是
scalegestruedetector
源代码:

好吧,你可以得到
scalegestruedetector
源代码并放入你的项目中,把它作为你自己的类,用它来代替系统
scalegestruedetector
,这样可以避免android 2.2及以下版本

以下是
scalegestruedetector
源代码:

Build.VERSION.RELEASE

使用上面的行获取设备的操作系统版本

你可以用简单的if-else。只要检查操作系统版本是否高于2.2,就可以进行放大和缩小。否则将其设置为不放大或缩小。

Build.VERSION.RELEASE

使用上面的行获取设备的操作系统版本


你可以用简单的if-else。只要检查操作系统版本是否高于2.2,就可以进行放大和缩小。否则就不能放大或缩小。

为2.2+创建两个类A和B。为2.1或更早版本创建两个类B

if(Build.VERSION.SDK_INT < 8) //2.2 version is 8
{
  Use the class B
}
else
{
 Use class A
}
if(Build.VERSION.SDK_INT<8)//2.2版本为8
{
使用B类
}
其他的
{
使用A类
}

为2.2+创建两个类A和B.A,为2.1或更早版本创建两个类B

if(Build.VERSION.SDK_INT < 8) //2.2 version is 8
{
  Use the class B
}
else
{
 Use class A
}
if(Build.VERSION.SDK_INT<8)//2.2版本为8
{
使用B类
}
其他的
{
使用A类
}

使用android.os.Build.VERSION.SDK_INT constants使用android.os.Build.VERSION.SDK_INT constants这太棒了!我将来怎样才能找到这样的课程?这是最好的/唯一的方法吗?这太棒了!我将来怎样才能找到这样的课程?这是最好的/唯一的方法吗?
public interface CustomScaleDetector
{
    public void onScale(Object o);
}
if(Build.VERSION.SDK_INT < 8) //2.2 version is 8
{
  Use the class B
}
else
{
 Use class A
}