代码之家  ›  专栏  ›  技术社区  ›  Daniel Benedykt

1.6 android应用程序上的实时壁纸

  •  1
  • Daniel Benedykt  · 技术社区  · 14 年前

    我有一个1.6版本的Android应用程序 我把墙纸拿出来,在我的应用程序上显示出来。

    当这是安装在2.1手机,有生活的墙纸,生活的墙纸不返回getWallpaper(),因为它只是返回一个可绘制,生活墙纸可能是另一回事。

    所以问题是,有没有可能在1.6应用程序的背景上显示一张实时壁纸?怎么用?

    到目前为止我还没有找到解决这个问题的办法。 我加上这个是为了更好地理解这个问题

    谢谢

    3 回复  |  直到 14 年前
        1
  •  2
  •   Daniel Benedykt    14 年前

    我找到了解决办法:

    1) 使用android.os.Build.VERSION.SDK\ INT检查手机的版本。 2) 进行if/else调用,以便为每个版本调用所需的方法。 在这种情况下:

    this.setTheme(android.R.style.Theme\墙纸);

    }

    {

    //还有别的吗

    }

    3) 使用2.1构建应用程序。清单中的set使用sdk android:minSdkVersion=“4”,因此它也可以在1.6上运行

    4) 确保它在1.6和2.1两款手机上都能正常工作,因为两个SDK都有调用,所以在运行1.6时不要调用2.1的方法,反之亦然。

        2
  •  1
  •   hackbod    14 年前

    在2.0中,添加了Theme.Wallpaper主题样式,这是一种新的官方方式,可以将活动(或窗口)放在系统的墙纸(活动或不活动)之上。当然,由于这是在2.0中出现的,所以在1.6中也不能使用。

    实际上,您可以使用版本化的资源创建自己的主题,并根据平台版本(墙纸或传统主题)进行适当调整。不过,我从没试过这么做。

        3
  •  0
  •   Mark B    14 年前

    你用过吗 Theme.Wallpaper