Im Implementieren von tablailayout dynamisch Code unten.So legen Sie Schaltflächenhintergrundbild fest, um Inhalt dynamisch in ein Tabellenlayout zu überführen
private void showCowsTblField() {
for (int row = 0; row < numberOfRowsInField - 1; row++) {
TableRow tableRow = new TableRow(this);
tableRow.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT));
for (int column = 0; column < numberOfColumnsInField - 1; column++) {
LayoutParams layoutParams = new LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
if (column == 0) {
textSno[row][column].setLayoutParams(layoutParams);
layoutParams.setMargins(0, 0, 0, 0);
tableRow.addView(textSno[row][column]);
} else {
blocks[row][column].setLayoutParams(layoutParams);
layoutParams.setMargins(1, 1, 1, 1);
tableRow.addView(blocks[row][column]);
}
tableRow.setBackgroundResource(R.drawable.bar_1);
}
tblCows.addView(tableRow, new TableLayout.LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
}
}
hier Block ist eine Klasse erweitert Button-Klasse, in dieser Klasse iam Einstellung Hintergrundbild als
this.setBackgroundResource(R.drawable.edit_button);
Hier Problem ist die Schaltfläche Hintergrundbild Größe (Höhe) ändert passen Höhe TableRow . was nicht gut aussieht.
Wie kann ich Button Hintergrundbild auf tatsächliche Größe (wrapcontent) in der Tabellenzeile festlegen.
Bitte lassen Sie mich wissen .... Dank .........
Ich habe versucht, einen anderen Weg this.setMaxHeight (26). \t \t this.setMaxWidth (54); Problem gelöst ... auf jeden Fall danke ..... – praveenb
Ich glaube nicht, dass das Festlegen hartcodierter Dimensionen eine gute Übung ist. – fiction
hmm ... yeah hast recht ... für jetzt möchte ich weiter zur nxt task ... anstatt für diese Logik etwas mehr Zeit aufzuwenden .... – praveenb