按下按钮后在android中设置mywallpaper

时间:2014-05-24 16:05:56

标签: android wallpaper

我制作了自己的壁纸,当用户点击“SET WALLPAPER”按钮时,我不知道如何设置它。

我写道:

<uses-permission android:name="android.permission.SET_WALLPAPER" />
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />

但不是代码,我需要你的帮助。

2 个答案:

答案 0 :(得分:2)

这是我的解决方案....使用Intent启动MyWallPaperService

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

谢谢!

答案 1 :(得分:0)

您可以更改一个Activity的背景:

  • Activity布局中,设置根View(通常为LinearLayourRelativeLayoutandroid:background="@drawable/yourdrawable"

  • 编程方式:

    LinearLayout ll = (LinearLayout) findViewById(R.id.myLinearLayout);
    ll.setBackgroundDrawable(...)
    
  • 或者您的应用主题或Activity

在您的情况下,您有兴趣以编程方式更改它,因此您需要使用第二个选项。您需要在按钮中添加onClickListener并在里面更改背景,如下所示:

    myButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            LinearLayout ll = (LinearLayout) findViewById(R.id.myLinearLayout);
            ll.setBackgroundDrawable(...)
        }
    });

顺便说一句,要更改活动的背景,您不需要使用permisions

<uses-permission android:name="android.permission.SET_WALLPAPER" />
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" />

您有类似的问题:

How to programmatically change the background image of an Android Activity

Change Layout-background on click programmatically

Android: Changing Background-Color of the Activity (Main View)

How to set background color of an Activity to white programmatically?