final Handler myHandler = new Handler ()
{
@Override
public void handleMessage(Message msg)
{
if (msg.what == 0x1222)
{
}
}
};
------------------------------------------------------------------------------------------------new Timer().schedule(
new TimerTask(){ //TimerTask类型的对象,TimerTask的run()方法是要周期执行的一个任务
@Override
public void run() {
currentColor ++;
if (currentColor >= 6)
currentColor = 0;
Message m = new Message();
m. what = 0x1122;
handler.sendMessage(m);
}
},
0 , //表示多长时间后开始执行
100//执行的周期
);
public class FrameLayoutTest extends Activity
{
private int currentColor = 0;
final int[] colors = new int[]
{
R.color.color7,
R.color.color6,
R.color.color5,
R.color.color4,
R.color.color3,
R.color.color2,
R.color.color1,
};
final int[] names = new int[]
{
R.id.View01,
R.id.View02,
R.id.View03,
R.id.View04,
R.id.View05,
R.id.View06,
R.id.View07
};
TextView[] views = new TextView[7];
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
for (int i = 0 ; i < 7 ; i++)
{
views[i] = (TextView)findViewById(names[i]);
}
final Handler handler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
if(msg.what == 0x1122)
{
for(int i = 0 ; i < 7 - currentColor ; i++)
{
views[i].setBackgroundResource(colors[i + currentColor]);
}
for(int i = 7 - currentColor , j = 0 ; i < 7 ; i++ ,j++)
{
views[i].setBackgroundResource(colors[j]);
}
}
}
};
new Timer().schedule(new TimerTask()
{
@Override
public void run()
{
currentColor++;
if(currentColor >= 6)
{
currentColor = 0;
}
Message m = new Message();
m.what = 0x1122;
handler.sendMessage(m);
}
}, 0 , 100);
}
}public class HandlerTest extends Activity
{
int[] imageIds = new int[]
{
R.drawable.haed_danya,
R.drawable.haed_fanse,
R.drawable.haed_fugu,
R.drawable.haed_gudian,
R.drawable.haed_houqingchu
};
int currentImageId = 0;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final ImageView show = (ImageView)findViewById(R.id.show);
final Handler myHandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
if (msg.what == 0x1222)
{
show.setImageResource(imageIds[currentImageId++]);
if (currentImageId >= 4)
{
currentImageId = 0;
}
}
}
};
new Timer().schedule(new TimerTask()
{
@Override
public void run()
{
Message msg = new Message();
msg.what = 0x1222;
myHandler.sendMessage(msg);
}
}, 0 , 100);
}
}Android的Handle学习,布布扣,bubuko.com
原文:http://blog.csdn.net/imlanbin/article/details/19985271