您的位置:首页 > 移动开发 > Android开发

android背景图片更换——经典例子

2011-12-01 10:25 429 查看
机背景和电脑一样,也必要我们去更换图片。如果你觉得太单调,可以把它改成自己喜欢的图片,下面我们来看一下背景的图片更换程序,是如何编写的。我们先看一下图先




viewsourceprint?

package
com.smart.image;
import

android.app.Activity;
import

android.app.AlarmManager;
import

android.app.PendingIntent;
import

android.content.Context;
import

android.content.Intent;
import

android.os.Bundle;
import

android.view.View;
import

android.view.View.OnClickListener;
import

android.widget.Button;
public
class
Main
extends

Activity
implements

OnClickListener{
private

ButtonstartImage;
private

ButtonstopImage;
@Override
public

void
onCreate(BundlesavedInstanceState){
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
startImage=(Button)findViewById(R.id.statrImage);
stopImage=(Button)findViewById(R.id.stopImage);
stopImage.setEnabled(
false
);
//刚开始显示为false
startImage.setOnClickListener(
this
);
//绑定器
stopImage.setOnClickListener(
this
);
}

@Override
public

void
onClick(Viewv){
//获得服务
AlarmManageralarmManager=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
//启动
PendingIntentpendingIntent=PendingIntent.getService(
this
,
0
,
new

Intent(
this
,ChangeBackground.
class
),
0
);
switch

(v.getId())
{
//按钮事件开始更换背景图片
case

R.id.statrImage:
alarmManager.setRepeating(AlarmManager.RTC,
0
,
5000
,
pendingIntent);
startImage.setEnabled(
false
);
stopImage.setEnabled(
true
);
break
;
//按钮事件停止图片更换
case

R.id.stopImage:
alarmManager.cancel(pendingIntent);
startImage.setEnabled(
true
);
stopImage.setEnabled(
false
);
break
;
}
}

}
方法实现类

viewsourceprint?

package
com.smart.image;
import

java.io.InputStream;
import

android.app.Service;
import

android.content.Intent;
import

android.os.IBinder;
import

android.util.Log;
public
class
ChangeBackground
extends

Service{
private
static
final
StringTAG=
"ChangeBackground"
;
private

static
int

index=
0
;
//数组元素从0开始
//图片数组
private

int
[]resIds=

new
int
[]{R.raw.one,R.raw.two,R.raw.three,
R.raw.four,R.raw.five,R.raw.six,R.raw.seven};
@Override
public

void
onStart(Intentintent,
int
startId){

if
(index==
7
)
index=
0
;
InputStreaminputStream=getResources().openRawResource(resIds[index++]);
//得到资源图片的元素
try

{
setWallpaper(inputStream);
//显示图片
}
catch
(Exceptione){
Log.i(TAG,e.toString());
//查看错误信息
}
super
.onStart(intent,startId);
}

//创建
@Override
public

void
onCreate(){

super
.onCreate();
}

@Override
public

IBinderonBind(Intentarg0){
return

null
;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: