1

私がやろうとしているのは、いくつかのアクションを備えたライブ壁紙です(すでに行われています)が、問題はそこにあります..「アクション」がビューを拡張するクラスであり、アクティビティのsetContentView()メソッドではないアクティビティで作成したことです。いくつかのレイアウト..これViewです.そして、私が今やろうとしているのは、そのアクティビティを壁紙として設定するオプションを作成することですが、方法がわかりません. これは、onCreate()をロードしているメインのアクティビティからの私のメソッドViewです。それを壁紙にしたいのですが、どうすれば壁​​紙に設定できますか?

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        SnowFall snowFallView = new SnowFall(this);
        setContentView(snowFallView);
        snowFallView.setBackgroundDrawable(getResources().getDrawable(
                R.drawable.christmas));

    }

作成したいアプリの例を次に示します: https://play.google.com/store/apps/details?id=com.chiralcode.wallpaper.autumn&hl=bg

4

2 に答える 2

4

壁紙をサービスとして実装しましたか? 基本を取得 -ここでライブ壁紙に関する Lars Vogel のチュートリアルを確認してください

つまり、目的を持って壁紙を設定できます。

Intent intent = new Intent(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT, new ComponentName(this, MyWallpaperService.class));
startActivity(intent);

上記をクラス名に合わせて調整する必要があります。また、AndroidManifest で許可 android.permission.BIND_WALLPAPER を持っていることを忘れないでください。ただし、もう一度、彼のチュートリアルを読んでください。

于 2013-11-13T13:52:48.160 に答える