Как нарисовать два изображения в правом нижнем углу экрана программно?(без использования файлов XML) - PullRequest
1 голос
/ 04 октября 2011

Мне нужно нарисовать два изображения, (+) и (-) в правом нижнем углу экрана, аналогично объектам масштабирования из googlemaps.

Мне нужно сделать это программно, с Java и без использования файлов XML.

Я пытаюсь сделать с относительной разметкой, но я не знаю, как это сделать. Они должны находиться в правом нижнем углу экрана с разницей в 5 или 10 пикселей между ними.

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

Также будет здорово, если кто-нибудь подскажет, как определить, когда пользователь нажал каждое изображение.

Ответы [ 2 ]

2 голосов
/ 04 октября 2011

Вы можете использовать гравитацию.

http://developer.android.com/reference/android/widget/RelativeLayout.html#setGravity(int)

это может сделать это:

image.setGravity(Gravity.RIGHT | Gravity.BOTTOM);
1 голос
/ 04 октября 2011

Это должно работать

ImageView plusImage = new ImageView(this);
RelativeLayout.LayoutParams pp = new RelativeLayout.LayoutParams(
        LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
pp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
pp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT,RelativeLayout.TRUE);
pp.leftMargin = 5;
plusImage.setId(501);
plusImage.setLayoutParams(pp);
plusImage.setImageResource(R.drawable.icon);

ImageView minusImage = new ImageView(this);
RelativeLayout.LayoutParams mp = new RelativeLayout.LayoutParams(
        LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
mp.addRule(RelativeLayout.LEFT_OF,plusImage.getId());
mp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
mp.rightMargin = 5;
minusImage.setId(502);
minusImage.setLayoutParams(mp);
minusImage.setImageResource(R.drawable.icon);

//Add the images to the outer layout   
((RelativeLayout)findViewById(R.id.outerlayout)).addView(plusImage);
((RelativeLayout)findViewById(R.id.outerlayout)).addView(minusImage);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...