第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > java多线程霓虹灯 Android 霓虹灯

java多线程霓虹灯 Android 霓虹灯

时间:2023-02-09 04:22:32

相关推荐

java多线程霓虹灯 Android 霓虹灯

该楼层疑似违规已被系统折叠隐藏此楼查看此楼

这是我用Android Studio做的霓虹灯,总是不对。请各位大大给点意见啊!!!

package com.example.admin.helloworld;

import android.annotation.SuppressLint;

import android.os.Handler;

import android.os.Bundle;

import android.support.annotation.Nullable;

import android.support.v7.app.AppCompatActivity;

import android.widget.TextView;

import android.os.Message;

import java.util.Timer;

import java.util.TimerTask;

/**

* 霓虹灯

*/

public class Main extends AppCompatActivity {

//存TextView的ID

private int[] textIds=new int[]{

R.id.text01,

R.id.text02,

R.id.text03,

R.id.text04,

R.id.text05};

//存颜色

private int[] colors=new int[]{

R.color.color_1,

R.color.color_2,

R.color.color_3,

R.color.color_4,

R.color.color_5};

//绑定控件用的TextView的数组

private TextView[] views=new TextView[textIds.length];

private int currentColorPointer=0;//从哪个颜色开始

static Handler handler;

@SuppressLint("HandlerLeak")

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.neonlight);

for (int i = 0; i < textIds.length; i++) {

views[i] = findViewById(textIds[i]);

}

//创建Handler对象,用于接收消息并处理

handler = new Handler() {

@Override

public void handleMessage(Message msg) {

//判断消息是否为指定消息

if (msg.what == 0x11) {

for (int i = 0; i < views.length; i++) {

views[i].setBackgroundColor(colors[Math.abs(i + currentColorPointer)%textIds.length]);

}

// currentColorPointer = (currentColorPointer + 1) % colors.length;

currentColorPointer++;

}

super.handleMessage(msg);

}

};

Timer timer = new Timer(); //创建定时器对象

timer.schedule(new TimerTask() {

@Override

public void run() {

handler.sendEmptyMessage(0x11);

}

}, 0, 300); //每隔300s发送一次消息

}

}

XML文件

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/text01"

android:layout_width="300dp"

android:layout_height="300dp"

android:layout_gravity="center"

android:background="@color/color_1" />

android:id="@+id/text02"

android:layout_width="240dp"

android:layout_height="240dp"

android:layout_gravity="center"

android:background="@color/color_2"/>

android:id="@+id/text03"

android:layout_width="180dp"

android:layout_height="180dp"

android:layout_gravity="center"

android:background="@color/color_3" />

android:id="@+id/text04"

android:layout_width="120dp"

android:layout_height="120dp"

android:layout_gravity="center"

android:background="@color/color_4"/>

android:id="@+id/text05"

android:layout_width="60dp"

android:layout_height="60dp"

android:layout_gravity="center"

android:background="@color/color_5" />

颜色的XML文件

#3F51B5

#303F9F

#FF4081

#f00

#0f0

#00f

#ff0

#f0f

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。