Как настроить фоновое изображение кнопки для динамического переноса содержимого в макете таблицы - PullRequest
1 голос
/ 29 декабря 2010

Я реализую таблицу динамически код ниже.

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));
    }
}

здесь блок - это класс, расширяющий класс Button, в этом классе iam устанавливает фоновое изображение как

this.setBackgroundResource(R.drawable.edit_button);

Здесь проблема заключается в том, что размер фонового изображения кнопки (высота) изменяется в соответствиидо высоты столачто не выглядит хорошо.

Как я могу установить фоновое изображение кнопки на фактический размер (wrapcontent) в строке таблицы.

Пожалуйста, дайте мне знать .... Спасибо .........

Ответы [ 2 ]

1 голос
/ 29 декабря 2010

Посмотрите, поможет ли это - http://developer.android.com/reference/android/widget/ImageView.ScaleType.html

Вы можете установить его, только если вы используете http://developer.android.com/reference/android/widget/ImageButton.html

Ваш код должен выглядеть примерно так:

class MyButton extends ImageButton{...}


this.setScaleType(scaleType);
0 голосов
/ 17 января 2011

Я попробовал следующий код в моем классе;который расширяет класс кнопки

this.setMaxHeight(26);
this.setMaxWidth(54); 

решенная проблема. :)

...