Android Studio:每秒添加一次

时间:2015-03-26 11:34:19

标签: java android timer numbers seconds

我想在一定时间内显示一个人的收入。为此我要求在另一项活动中每月收入(= gehalt)和每周工作时间(stunden)。然后在第二个活动中,我希望每秒以每秒收入增加TextView showGehaltproSekunde(id = textViewZahl)。 我是初学者,所以我不知道我在public void run()中写的具体内容。或者是否有另一种可能每秒增加数量? 我希望有一个人可以帮助我。谢谢!

public class SecondScreen extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.secondlayout);
    Timer t, timer;

    Intent getGehalt = getIntent();
    float gehalt = getGehalt.getFloatExtra("Gehalt", 0);

    Intent getStunden = getIntent();
    float stunden = getStunden.getFloatExtra("Stunden", 0);

    double gehaltProSekunde = gehalt/4/stunden/3600;
    double gehaltProSekundeRounded = Math.round(gehaltProSekunde*1000)/1000.0;

    TextView showGehaltProSekunde = (TextView)findViewById(R.id.textViewZahl);
    showGehaltProSekunde.setText(gehaltProSekundeRounded+" €");

    t = new Timer();
    t.scheduleAtFixedRate( new TimerTask() {
        @Override
        public void run() {

        }
    });
}

}

2 个答案:

答案 0 :(得分:6)

例如分析:

private Handler mHandler = new Handler();
private boolean wasRun = true;
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
    if(wasRun){               
       //whatever you want to do if run
       //you can add you want to increase variable here
    }
    mHandler.postDelayed(this, 1000);
}
}, 1000); // 1 seconds

答案 1 :(得分:0)

只是提出一些与你的问题没有严格关联的建议(@altan yuksel回答得很好),我只是想对你的计算提出意见。

您使用一周/ 3600(一小时中的秒)工作/ 4 /小时计算月薪为秒,但并非所有月份都有4个工作周(实际上只有2月)。

我建议要求年薪和表现:年薪/ 52 /小时工作/ 3600

或者使用您当前的输入数据:
(月薪* 12)/ 52 /小时工作/ 3600

如果你自己尝试这些,你会发现它们更准确一些。