Выровняйте ImageView в LinearLayout по коду - PullRequest
3 голосов
/ 06 января 2011

вопрос прост, я динамически создаю представление изображения с использованием кода.

ImageView btnSend = new ImageView (this);

и добавьте его в LinearLayout, проблема в том, что я хочу оставить выровненным вправо

как это сделать?

Заранее спасибо

Ответы [ 2 ]

4 голосов
/ 06 января 2011

Попробуйте использовать LayoutParams:

LinearLayout rootLayout = (LinearLayout)findViewById(R.id.root_layout);

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
    LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.RIGHT;

ImageView btnSend = new ImageView (this); 
btnSend.setLayoutParams(params);
rootLayout.addView(btnSend);

Единственная проблема в том, что я не помню, если params.gravity устанавливает гравитацию содержимого или layout_gravity. Layout_gravity - это то, что вы хотите изменить в этом случае.

1 голос
/ 06 января 2011

Вы должны вызвать setGravity () для LinearLayout:

yourLinLay.setGravity(Gravity.RIGHT);

или в XML:

<LinearLayout android:gravity="right">

http://developer.android.com/reference/android/widget/LinearLayout.html#setGravity%28int%29 http://developer.android.com/reference/android/view/Gravity.html

...