Android изображения и кнопки - PullRequest
1 голос
/ 25 декабря 2011

Что я должен использовать, если я хочу иметь кнопки на изображении? Я имею в виду возможность кликать по определенным точкам изображения и видеть некоторую информацию.


Что если я хочу отобразить текст в этих точках? Представьте себе, что у меня есть карта моего соседа, например, и я хочу, чтобы отображалась некоторая информация (например, мой дом). И если кто-то нажмет на мой дом, он сможет увидеть дополнительную информацию, такую ​​как мое имя, мой телефон и так далее. Изображение (или карта) будет стабильным, оно не изменится, как фон.

Ответы [ 2 ]

2 голосов
/ 26 декабря 2011

Вам потребуется реализовать метод onTouch из интерфейса OnTouchListener. Например:

OnTouchListener listener = new OnTouchListener() {
    @Override
    public false onTouch(View v, MotionEvent event) {
        if(!event.getAction() == MotionEvent.ACTION_DOWN)
            return false; //If the touch event was not putting the finger down on the screen, return false(Actions may be move, up, and so on)
        final float x = event.getX();
        final float y = event.getY();
        if(x and y are in some range)
            doFirstThing();
        else if(x and y are in another range..)
            doSecondThing();
        //... and so on...
        //In the end, you must return a boolean saying whether you "consumed" the event - if you handled the event or not.
    }
}

И не забудьте установить слушателя как OnTouchListener для вашего ImageView!

imageView.setOnTouchListener(listener);
0 голосов
/ 27 декабря 2011

Я верю, что для того, чего вы пытаетесь достичь, вам не нужно использовать кнопки.Вместо этого создайте пользовательский вид, в своем методе onDraw нарисуйте изображения и обработайте события onTouch, как предложил Джонг.Например, когда вы обнаружили клик по вашему дому, вы можете создать другое представление с информацией о нем и отобразить его пользователю.

Для получения информации о том, как создать пользовательское представление, вы можете обратиться к этой очереди , например.Google вокруг этого

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