Реализация ввода цифрового пароля через GridView

Интерфейс, диалоги, темы, стили, меню
Закрыто
nebesny
Сообщения: 5
Зарегистрирован: 13 окт 2016, 20:43

Реализация ввода цифрового пароля через GridView

Сообщение nebesny » 23 окт 2016, 14:34

Господа, такой вопрос. Пытаюсь реализовать ввод пин-кода через GridView, состоящего из ImageView. Подобное реализовано в приложениях аля "сбербанкОнлайн" для быстрого доступа к приложению.

Код: Выделить всё

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        getSupportActionBar().hide();

        int []pin_data = {R.drawable.pin_one,R.drawable.pin_two,R.drawable.pin_three,R.drawable.pin_four,R.drawable.pin_five,R.drawable.pin_six,R.drawable.pin_seven,R.drawable.pin_eight,R.drawable.pin_nine,R.drawable.pin_empty,R.drawable.pin_zero,R.drawable.pin_clear};

        ArrayList<Map<String, Object>> pin = new ArrayList<Map<String, Object>>(
                pin_data.length);
        Map<String, Object> m;

        for (int i = 0; i < pin_data.length; i++)
        {
            m = new HashMap<String,Object>();
            m.put(ATTRIBUTE_NAME_IMAGE,pin_data[i]);
            pin.add(m);

        }

        String [] from = {ATTRIBUTE_NAME_IMAGE};
        int []to = {R.id.imgBtn};
        mAdapter adapter = new mAdapter(this,pin,R.layout.pin,from,to);
        imgBtn = (ImageView)findViewById(R.id.imgBtn);
        gvPin = (GridView)findViewById(R.id.gvPin);
        gvPin.setAdapter(adapter);
        adjustGridView();



    }
        private void adjustGridView()
        {
            gvPin.setNumColumns(3);
        }
Как реализовать событие нажатия и удержания какого-то ImageView, при этом что бы у него менялась картинка (подсвечивалась другим цветом при нажатии). С удовольствием выслушаю варианты как это еще можно реализовать. Например через TableLayout. Спасибо.

Закрыто