Android日历使当天无效

时间:2013-09-17 18:11:12

标签: android if-statement calendar

我需要再次帮助。

我正在尝试获取当天的日期,并将一些特定的文字设置为textviews。 但我的IF声明无法正常工作。

实际上,它每天都会设置MONDAY的文本,每天写“Reede”(FRIDAY)。 所以,这对我来说很困惑,因为我是Android的新手。 我做错了什么?

CODE:

private void setupTunniplaan() {

    TextView paev = (TextView) findViewById(R.id.esmasp);

    String[] tunnidesmasp = {"Matemaatika", "Bioloogia", "Füüsika", "Kehaline", "Geograafia", "Inglise keel", "Ajalugu","",""};
    String[] tunnidteisip = {"Inglise keel", "Vene keel", "Karjääri õpetus", "Karjääri õpetus", "Matemaatika", "Eesti keel", "Kirjandus","", ""};
    String[] tunnidkolmap = {"Füüsika", "Kehaline", "Keemia", "Matemaatika", "Kirjandus", "Kirjandus", "Kirjandus", "Inglise keel", "", ""};
    String[] tunnidneljap = {"Inglise keel", "Ajalugu", "Matemaatika", " Muusika", "Geograafia", "Bioloogia", "Geograafia", "", ""};
    String[] tunnidreede = {"Keemia", "UTA", "Eesti keel", "Matemaatika", "Vene keel", "Bioloogia", "Soome keel", "", ""};


    Calendar kal = Calendar.getInstance();
    int day = kal.get(Calendar.DAY_OF_WEEK);
    if (day == Calendar.MONDAY); {
        tunnid(tunnidesmasp[0], tunnidesmasp[1], tunnidesmasp[2],tunnidesmasp[3], tunnidesmasp[4], tunnidesmasp[5],
                tunnidesmasp[6],tunnidesmasp[7], tunnidesmasp[8] );
        paev.setText("Esmaspäev");


    }
    if (day == Calendar.TUESDAY); {
        tunnid(tunnidteisip[0], tunnidteisip[1], tunnidteisip[2],tunnidteisip[3], tunnidteisip[4], tunnidteisip[5],
                tunnidteisip[6],tunnidteisip[7], tunnidteisip[8] );
        paev.setText("Teisipäev");
    }
        if (day == Calendar.WEDNESDAY); {
            tunnid(tunnidkolmap[0], tunnidkolmap[1], tunnidkolmap[2],tunnidkolmap[3], tunnidkolmap[4], tunnidkolmap[5],
                    tunnidkolmap[6],tunnidkolmap[7], tunnidkolmap[8] );
            paev.setText("Kolmapäev");
        }

    if (day == Calendar.THURSDAY); {
        tunnid(tunnidneljap[0], tunnidneljap[1], tunnidneljap[2],tunnidneljap[3], tunnidneljap[4], tunnidneljap[5],
                tunnidneljap[6],tunnidneljap[7], tunnidneljap[8] );
        paev.setText("Neljapäev");
    }
    if (day == Calendar.FRIDAY); {
        tunnid(tunnidreede[0], tunnidreede[1], tunnidreede[2],tunnidreede[3], tunnidreede[4], tunnidreede[5],
                tunnidreede[6],tunnidreede[7], tunnidreede[8]);
        paev.setText("Reede");
    }

    if (day == Calendar.SATURDAY); {
        tunnid(tunnidesmasp[0], tunnidesmasp[1], tunnidesmasp[2],tunnidesmasp[3], tunnidesmasp[4], tunnidesmasp[5],
                tunnidesmasp[6],tunnidesmasp[7], tunnidesmasp[8] );
    }

    if (day == Calendar.SUNDAY); {
        tunnid(tunnidesmasp[0], tunnidesmasp[1], tunnidesmasp[2],tunnidesmasp[3], tunnidesmasp[4], tunnidesmasp[5],
                tunnidesmasp[6],tunnidesmasp[7], tunnidesmasp[8] );
    }

    return;




}

//对不起,如果我问愚蠢的问题。

编辑:谢谢。 TextView paev现在正常工作。

但是tunnid()仍然无法正常工作。你可以在每个if语句中看到它作为第一件事。在每种情况下,我的代码仍然适用于MONDAY-s“tunnid()”。所以,paev.setText()工作正常,但tunnid()不正常。

tunnid()的代码:

public void tunnid(String esimenetund, String teinetund, String kolmastund, String neljastund, String viiestund,
    String kuuestund, String seitsmestund, String kaheksastund, String yheksastund) {

TextView tund1 = (TextView) findViewById(R.id.tund1);
TextView tund2 = (TextView) findViewById(R.id.tund2);
TextView tund3 = (TextView) findViewById(R.id.tund3);
TextView tund4 = (TextView) findViewById(R.id.tund4);
TextView tund5 = (TextView) findViewById(R.id.tund5);
TextView tund6 = (TextView) findViewById(R.id.tund6);
TextView tund7 = (TextView) findViewById(R.id.tund7);
TextView tund8 = (TextView) findViewById(R.id.tund8);
TextView tund9 = (TextView) findViewById(R.id.tund9);

TextView ylesanne1 = (TextView) findViewById(R.id.yl1);
TextView ylesanne2 = (TextView) findViewById(R.id.yl2);
TextView ylesanne3 = (TextView) findViewById(R.id.yl3);
TextView ylesanne4 = (TextView) findViewById(R.id.yl4);
TextView ylesanne5 = (TextView) findViewById(R.id.yl5);
TextView ylesanne6 = (TextView) findViewById(R.id.yl6);
TextView ylesanne7 = (TextView) findViewById(R.id.yl7);
TextView ylesanne8 = (TextView) findViewById(R.id.yl8);
TextView ylesanne9 = (TextView) findViewById(R.id.yl9);

tund1.setText(esimenetund);
tund2.setText(teinetund);
tund3.setText(kolmastund);
tund4.setText(neljastund);
tund5.setText(viiestund);
tund6.setText(kuuestund);
tund7.setText(seitsmestund);
tund8.setText(kaheksastund);
tund9.setText(yheksastund);

ylesanne1.setText("");
ylesanne2.setText("");
ylesanne3.setText("");
ylesanne4.setText("");
ylesanne5.setText("");
ylesanne6.setText("");
ylesanne7.setText("");
ylesanne8.setText("");
ylesanne9.setText("");  

}

1 个答案:

答案 0 :(得分:1)

在每个if语句后面都有分号(;):

if (day == Calendar.TUESDAY);

这意味着if语句没有要执行的块。 您的应用程序将在每个if语句后执行每个块。

删除分号(;)