Backgroundcolor von TableRow

P

p99p5

Neues Mitglied
0
Hallo,
ich habe ein merkwürdiges Problem.
Und zwar weise ich meiner Tablerow eine Hintergrundfarbe zu. Nur wird diese falsch dargestellt. Das gleiche gilt für die TextViews innerhalb der Tablerow. Allerdings nur für die TextViews die mittels unterem Code hinzugefügt wurden. Die per Designer werden richtig dargestellt.

Mein Code sieht, gekürzt, folgendermaßen aus:

PHP:
        for (int i = 0 ; i < objTabelle.Count(); i++)
        {
            TableRow tr=new TableRow(this);

            TextView txtPosition = new TextView(this);
            TextView txtClub = new TextView(this);
            TextView txtPunkte = new TextView(this);
            TextView txtTorverhaeltnis = new TextView(this);
    
            txtPosition.setText(String.valueOf(i+1) + ". ");
            txtClub.setText(objTabelle.Item(i).getClub());
            txtPunkte.setText(String.valueOf(objTabelle.Item(i).getPunkte()));
            txtTorverhaeltnis.setText(String.valueOf(objTabelle.Item(i).getTore() + ":" + objTabelle.Item(i).getGTore()));
                   
            
            if ((i%2) == 0) 
            {
                tr.setBackgroundResource(R.color.RowBackGroundGerade);    
            }
            else
            {
                tr.setBackgroundResource(R.color.RowBackGroundUngerade);
            }

            txtClub.setTextColor(R.color.Black);
            
            tr.addView(txtPosition); 
            tr.addView(txtClub); 
            tr.addView(txtPunkte);
            tr.addView(txtTorverhaeltnis);
            
            tableAktuell.addView(tr);

        }

R.color.RowBackGroundGerade entspricht #E6E6E6 und wird dargestellt als #E7E7E7.

R.color.RowBackGroundUngerade entspricht #CCCCCC und wird dargestellt als #CECFCE.

Das gleiche Problem besteht auch mit dem TextView, wenn ich den TextViews die Farbe Schwarz zuweise (#000000), erhalte ich #737973.

Meine main.xml findet sich hier:
http://pastebin.com/z2K01zJs

Danke für eure Hilfe. :)
 
Hallo ihrs :smile:

Ziel soll sein, die Hintergrundfarbe eines Layouts ( View ) zu ändern.

Etwas blauäugig mein erster Versuch.


setContentView(R.layout.main);
LayoutInflater li = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View layoutView = li.inflate(R.layout.main, null);
layoutView.setBackgroundColor(0xFFFFFF);


- Aufruf in onCreate der Activity
- keine Fehler bzw. Exceptions
- es "passiert" einfach nichts, zumindest ändert sich die Farbe nicht

Die Hintegrundfarbe will ich nicht in den Layouts festlegen, sondern
in meiner Activity Basisklasse.​

Vielen Dank für ein Denkansatz, Link, o.ä. - ick such mal weiter, vll. komm ich doch noch selbst drauf, wie es funzt.​


Edit:​


mScreen = (LinearLayout) findViewById(R.id.Layout_Main);
mScreen.setBackgroundColor(0xFFFF00FF);
mScreen.invalidate();

so funktioniert es tatsächlich, doch :)


Bleibt die Frage: warum funktioniert Variante 1 nicht.

Variante 1 ( funktioniert nicht )

LayoutInflater li = (LayoutInflater)getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
mScreen = (LinearLayout) li.inflate(R.layout.main, null);
mScreen.setBackgroundColor(0xFFFFFFFF);
mScreen.invalidate();


Variante 2 ( funktioniert )
mScreen = (LinearLayout) findViewById(R.id.Layout_Main);
mScreen.setBackgroundColor(0xFFFFFFFF);

 
Zuletzt bearbeitet:

Ähnliche Themen

S
Antworten
17
Aufrufe
554
jogimuc
J
5
Antworten
22
Aufrufe
1.420
590239
5
M
Antworten
4
Aufrufe
1.171
swa00
swa00
Zurück
Oben Unten