Настройка LayoutParams с несколькими строками кода - PullRequest
2 голосов
/ 19 сентября 2011

Есть ли простой и простой способ установить LayoutParams?Или, если быть точным, MarginLayoutParams?Я хочу установить MarginRight на несколько dp, к сожалению, я не могу установить их в LayoutFile, потому что Target является ListFragment, а в Code-Behind выглядит очень уродливо.Причина, по которой я делаю это не в макете элементов, заключается в том, что код оптимизирован и перфоман.

Подводя итог: Есть ли очень простой и понятный способ установки параметров?

Ответы [ 2 ]

2 голосов
/ 19 сентября 2011

Да, вы можете сделать что-то вроде этого:

  MyImageView i2 = new MyImageView(context);

  LayoutParams lp = new LayoutParams(300, 300);
  lp.LeftMargin = 100;
  lp.TopMargin = 100;
  lp.Gravity = 0;

  this.AddView(i2, lp);
1 голос
/ 19 сентября 2011
LayoutParams lp = new LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT );
lp.setMargins( left, top, right, bottom );

Возможно, вам потребуется записать его как LinearLayout.LayoutParams, в зависимости от того, какой тип макета является контейнером.

И затем вы вызываете метод setLayoutParams( lp ); для данного представления / макета / виджета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...