1

また助けが必要です。

私は現在の日を取得しようとしており、特定のテキストをテキストビューに設定しています。しかし、私の IF ステートメントは正しく機能していません。

実際には、MONDAY-s のテキストを日常に設定し、毎日に「Reede (FRIDAY)」と書き込みます。だから、私はAndroidの初心者なので、かなり混乱しています。私が間違っていることは何ですか?

コード:

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("");  

}

4

1 に答える 1

1

if ステートメントのそれぞれの後にセミコロン (;) があります。

if (day == Calendar.TUESDAY);

つまり、if ステートメントには実行するブロックがありません。アプリケーションは、各 if ステートメントの後に各ブロックを実行します。

セミコロン (;) を削除します

于 2013-09-17T19:04:33.587 に答える