Java 尝试将背景从白色更改为黑色,但可以';无法运行此timer()方法,屏幕仅为白色
我正在尝试制作一个简单的应用程序,它每秒改变背景颜色很多次。例如,这里我尝试每12.5毫秒做一次(如何输入.5部分?) 我对编程非常陌生,不知道如何调用此方法/计时器开始运行 我运行应用程序,它以白色背景打开活动,但什么也没发生。 因为我是一个新手,当我查看Timer()文档时,我不确定我在看什么。。。。如果有人能帮上忙,那就太棒了Java 尝试将背景从白色更改为黑色,但可以';无法运行此timer()方法,屏幕仅为白色,java,android,timer,Java,Android,Timer,我正在尝试制作一个简单的应用程序,它每秒改变背景颜色很多次。例如,这里我尝试每12.5毫秒做一次(如何输入.5部分?) 我对编程非常陌生,不知道如何调用此方法/计时器开始运行 我运行应用程序,它以白色背景打开活动,但什么也没发生。 因为我是一个新手,当我查看Timer()文档时,我不确定我在看什么。。。。如果有人能帮上忙,那就太棒了 import android.app.Activity; import android.graphics.Color; import android.os.Bu
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import java.util.Timer;
import java.util.TimerTask;
import static android.support.v7.appcompat.R.attr.background;
/**
* Created by Spader on 3/17/2017.
*/
public class FlashingScreen extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.flashing_screen);
new Timer().scheduleAtFixedRate(new TimerTask(){
@Override
public void run(){
runOnUiThread(new Runnable() {
@Override
public void run() {
//stuff that updates ui
getWindow().getDecorView().setBackgroundColor(Color.WHITE);
getWindow().getDecorView().setBackgroundColor(Color.BLACK);
}
;
});
}
},0,12);
}
}
一,。
getWindow().getDecorView().setBackgroundColor(Color.WHITE);getWindow().getDecorView().setBackgroundColor(Color.BLACK);
这将始终设置黑色,因为它不是有条件的。您可能希望在每次执行runnable时使用布尔值切换颜色
当您的屏幕保持白色时,很可能这段代码并没有达到您期望的效果。因此,首先了解如何真正改变背景色。然后,当这工作可靠时,再看看时机。记录在案:人的眼睛不会注意到12毫秒和12.5毫秒之间的差异。很好的反馈。你对如何“真正改变背景颜色”有什么建议吗?我不是一个深入的安卓专家。我会问谷歌,然后开始玩:-)当你的屏幕保持白色时,很可能这段代码并没有达到你期望的效果。因此,首先了解如何真正改变背景色。然后,当这工作可靠时,再看看时机。记录在案:人的眼睛不会注意到12毫秒和12.5毫秒之间的差异。很好的反馈。你对如何“真正改变背景颜色”有什么建议吗?我不是一个深入的安卓专家。我会问谷歌,然后开始玩:-)