-1

私の問題は、これまでに見たことのないものです...

Android アプリを作成しようとしていますが、小さなバグが 1 つあります。これは非常に厄介です。

私は20個のTextView、10個の中型サイズ、10個の通常サイズ、小さいものを持っています。

そして、どういうわけか、これらのテキストビューのうちの 2 つ、1 つはメディア、もう 1 つは小さなもので、テキストを別のものに変更します。1 つ目はテキストを表示し、2 つ目は数値を表示する必要があります。どういうわけかそれらは逆であり、コードを見続けていますが、その理由がわかりません。

これは簡単に解決できることだと考えている人もいますが、コードを置き忘れただけだと思いますが、何度も何度も確認したところ、正しく表示されました。

public void showWritings(){
    TextView tv1stSpentReportM = (TextView) findViewById(R.id.tv1stSpentReportM);
    tv1stSpentReportM.setText(vetorGastos[9].getTipoGasto());

    TextView tv2stSpentReportM = (TextView) findViewById(R.id.tv2stSpentReportM);
    tv2stSpentReportM.setText(vetorGastos[8].getTipoGasto());

    TextView tv3stSpentReportM = (TextView) findViewById(R.id.tv3stSpentReportM);
    tv3stSpentReportM.setText(vetorGastos[7].getTipoGasto());

    TextView tv4stSpentReportM = (TextView) findViewById(R.id.tv4stSpentReportM);
    tv4stSpentReportM.setText(vetorGastos[6].getTipoGasto());

    TextView tv5stSpentReportM = (TextView) findViewById(R.id.tv5stSpentReportM);
    tv5stSpentReportM.setText(vetorGastos[5].getTipoGasto());

    TextView tv6stSpentReportM = (TextView) findViewById(R.id.tv6stSpentReportM);
    tv6stSpentReportM.setText(vetorGastos[4].getTipoGasto());

    TextView tv7stSpentReportM = (TextView) findViewById(R.id.tv7stSpentReportM);
    tv7stSpentReportM.setText(vetorGastos[3].getTipoGasto());

    TextView tv8stSpentReportM = (TextView) findViewById(R.id.tv8stSpentReportM);
    tv8stSpentReportM.setText(vetorGastos[2].getTipoGasto());

    TextView tv9stSpentReportM = (TextView) findViewById(R.id.tv9stSpentReportM);
    tv9stSpentReportM.setText(vetorGastos[1].getTipoGasto());

    TextView tv10stSpentReportM = (TextView) findViewById(R.id.tv10stSpentReportM);
    tv10stSpentReportM.setText(vetorGastos[0].getTipoGasto());


    TextView tv1stSpentReportV = (TextView) findViewById(R.id.tv1stSpentReportV);
    tv1stSpentReportV.setText(String.valueOf(vetorGastos[9].getValorGasto()));

    TextView tv2stSpentReportV = (TextView) findViewById(R.id.tv2stSpentReportV);
    tv2stSpentReportV.setText(String.valueOf(vetorGastos[8].getValorGasto()));

    TextView tv3stSpentReportV = (TextView) findViewById(R.id.tv3stSpentReportV);
    tv3stSpentReportV.setText(String.valueOf(vetorGastos[7].getValorGasto()));

    TextView tv4stSpentReportV = (TextView) findViewById(R.id.tv4stSpentReportV);
    tv4stSpentReportV.setText(String.valueOf(vetorGastos[6].getValorGasto()));

    TextView tv5stSpentReportV = (TextView) findViewById(R.id.tv5stSpentReportV);
    tv5stSpentReportV.setText(String.valueOf(vetorGastos[5].getValorGasto()));

    TextView tv6stSpentReportV = (TextView) findViewById(R.id.tv6stSpentReportV);
    tv6stSpentReportV.setText(String.valueOf(vetorGastos[4].getValorGasto()));

    TextView tv7stSpentReportV = (TextView) findViewById(R.id.tv7stSpentReportV);
    tv7stSpentReportV.setText(String.valueOf(vetorGastos[3].getValorGasto()));

    TextView tv8stSpentReportV = (TextView) findViewById(R.id.tv8stSpentReportV);
    tv8stSpentReportV.setText(String.valueOf(vetorGastos[2].getValorGasto()));

    TextView tv9stSpentReportV = (TextView) findViewById(R.id.tv9stSpentReportV);
    tv9stSpentReportV.setText(String.valueOf(vetorGastos[1].getValorGasto()));

    TextView tv10stSpentReportV = (TextView) findViewById(R.id.tv10stSpentReportV);
    tv10stSpentReportV.setText(String.valueOf(vetorGastos[0].getValorGasto()));

        }

}

Medium TextViews の名前には M が含まれ、小さな TextViews には V が含まれています。変数と ID に含まれています。

tv2stSpentReportM は tv2stSpentReportV のテキストを表示し、tv2stSpentReportV は tv2stSpentReportV のテキストを表示しています。

より明確にするために、これが私の「Gastos.class」のコードです。これは、配列 vetorGastos[] にあるものです。

public class Gastos {


private String tipoGasto;

private double valorGasto;

public String getTipoGasto() {
    return tipoGasto;
}

public void setTipoGasto(String tipoGasto) {
    this.tipoGasto = tipoGasto;
}

public double getValorGasto() {
    return valorGasto;
}

public void setValorGasto(double valorGasto) {
    this.valorGasto = valorGasto;
}

}

ここに画像の説明を入力 前に言ったように、誰も私を信じていませんが、私が言ったことを正確に示すプリントスクリーンとしてここに表示します. IDは正しいです。ならどうしよう?そして、信じない人たち、あなたが信じていないという理由だけで評判ポイントを削除してくれてありがとう. 画像を展開して、ID が正しいことを確認します。

私はすでにこれを解決しています。IDの1つを書き換えるだけで、正しくなります。それが単なるIDの置き忘れだった場合は、2つのIDを書き直す必要があります。どうしてか分かりません。しかし、それは問題を解決します。

ここに画像の説明を入力

4

1 に答える 1