《疯狂Android讲义》中 用帧布局FrameLayout 来制造 霓虹灯效果,布局文件activity.xml文件没有问题,但是在编写java程序的MainActivity.java文件的时候,写到color数组的时候,总是显示红色的错号,但是始终不知道如何的解决这些错号,这里先把MainActivity.java代码文件贴出来,如下所示
package com.example.framelayout;
import java.util.Timer;
import java.util.TimerTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
private int currentColor=0;
//定义一个颜色数组,编到这里的时候几乎每一行的color处都会显示红色的错号,百思不得其解???????????
//按常理,既然用到了R.color.color1,则gen/R.java中应该有color这样的一个类,类中有color1到color6这些常量
//但是始终找不到,这是为什么呢,想办法往R.java里边加color,没法加,因为这个文件本身就是自己自动生成的
final int[] colors = new int[]{
R.color.color1,
R.color.color2,
R.color.color3,
R.color.color4,
R.color.color5,
R.color.color6,
};
final int[] names = new int[]{
R.id.view01,
R.id.view02,
R.id.view03,
R.id.view04,
R.id.view05,
R.id.view06
};
TextView[] views = new TextView[names.length];
Handler handler = new Handler(){
public void handleMessage(Message msg){
//表明消息来自本程序发送
if(msg.what == 0x123){
for(int i=0;i<names.length;i++){
views[i].setBackgroundResource(colors[(i+currentColor)%names.length]);
}
currentColor++;
}
super.handleMessage(msg);
}
};