首页 > 系统 > Android > 正文

Android编程之手机壁纸WallPaper设置方法示例

2019-12-12 02:13:53
字体:
来源:转载
供稿:网友

本文实例讲述了Android编程之手机壁纸WallPaper设置方法。分享给大家供大家参考,具体如下:

/** * Andorid设置手机屏幕的壁纸 * * @description: * @author ldm * @date 2016-5-4 下午3:08:56 */public class SetWallpaperActivity extends Activity {  // WallpaperManager类:系统壁纸管理。通过它可以获得当前壁纸以及设置指定图片作为系统壁纸。  private WallpaperManager wallpaperManager;  // 壁纸对应的Drawable  private Drawable wallpaperDrawable;  // 展示样式的ImageView  private ImageView imageView;  // 随机生成图片的颜色 Button  private Button randomize;  // 设置壁纸  private Button setWallpaper;  // 暂定的一些颜色值  final static private int[] mColors = { Color.BLUE, Color.GREEN, Color.RED,      Color.LTGRAY, Color.MAGENTA, Color.CYAN, Color.YELLOW, Color.WHITE };  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.set_wallpaper);    // 初始化WallpaperManager    wallpaperManager = WallpaperManager.getInstance(this);    wallpaperDrawable = wallpaperManager.getDrawable();// 获得当前系统的壁纸    initViews();    initListeners();  }  private void initListeners() {    randomize.setOnClickListener(new OnClickListener() {      public void onClick(View view) {        int mColor = (int) Math.floor(Math.random() * mColors.length);        // 给当前系统壁纸设置颜色        wallpaperDrawable.setColorFilter(mColors[mColor],            PorterDuff.Mode.MULTIPLY);// 取两层绘制交集        imageView.setImageDrawable(wallpaperDrawable);        // imageView.invalidate();      }    });    setWallpaper.setOnClickListener(new OnClickListener() {      public void onClick(View view) {        try {          // 设置壁纸          wallpaperManager.setBitmap(imageView.getDrawingCache());          finish();        } catch (IOException e) {          e.printStackTrace();        }      }    });  }  private void initViews() {    imageView = (ImageView) findViewById(R.id.imageview);    imageView.setDrawingCacheEnabled(true);    imageView.setImageDrawable(wallpaperDrawable);    randomize = (Button) findViewById(R.id.randomize);    setWallpaper = (Button) findViewById(R.id.setwallpaper);  }}

布局文件:

<?xml version="1.0" encoding="utf-8"?><FrameLayout  xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="wrap_content"  android:layout_height="wrap_content">  <ImageView    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:id="@+id/imageview" />  <LinearLayout    android:orientation="horizontal"    android:layout_width="wrap_content"    android:layout_height="match_parent">    <Button      android:id="@+id/randomize"      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:text="@string/randomize"      android:layout_gravity="bottom" />    <Button      android:id="@+id/setwallpaper"      android:layout_width="wrap_content"      android:layout_height="wrap_content"      android:text="@string/set_wallpaper"      android:layout_gravity="bottom" />  </LinearLayout></FrameLayout>

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结

希望本文所述对大家Android程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表