Приложение «Калькулятор»

Концепция приложения: Выполнение математических операций.

Состав приложения:

Настройки приложения

Предварительно желательно скачать изображения математических операций: сложение, вычитание, умножение, деление, квадрат числа и квадратный корень числа, а также равенство.

Например:

Не забудьте переименовать картинки для удобства их дальнейшего использования. Картинку с именем add.png или multi.png проще и быстрее найти для использования на кнопке, нежели картинку sdkjfgshf1500.png.

Название приложения можно сделать «Калькулятор». Иконку — выбрать какую-нибудь из загруженных операций или загрузить что-то ещё.

Дизайн-макет

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

Выглядеть примерно он будет так:

Структура:

Настроим Экран:

  • Выравнивание по горизонтали и вертикали — Центр.
  • Цвет фона — по умолчанию (но вы можете сделать любой).
  • Отключим показ статус-бара и заголовка экрана.
  • Ориентацию лучше сделать широкоформатной, чтобы поместились все кнопки.

Добавим поле для ввода текста. Основная его настройка — установить галочку, что можно вводить только цифры (во избежание проблем с работой приложения в дальнейшем). Другие, декоративные настройки (размер шрифта, цвет, и т. д.), можно сделать на свой вкус. Компонент переименовать в «Число1».

Добавляем второе поле для ввода текста. Настройки аналогичны предыдущему, только компонент переименовываем в «Число2».

Между двумя полями вставляем Изображение — здесь будет отображаться выбранная операция. Размер его должен быть не очень большой, поэтому зададим ширину и высоту по 50 пикселей. Компонент переименуем в «Картинка операции».

Добавляем горизонтальное расположение. Здесь у нас будет располагаться ответ. Внутреннее выравнивание установить Центр Центр, остальные настройки можно по умолчанию.

Для удобства восприятия придется добавить внутрь расположения 2 надписи. Оформление их может быть любое. Но для первой надписи мы напишем текст «Ответ: » (обязательно пробел в конце!), а для второй — переименуем компонент в «Результат».

Далее добавляем еще одно горизонтальное расположение. В нем мы разместим кнопки операций. Настройки можно оставить по умолчанию.

В расположение нужно добавить 7 кнопок. Настройки для всех похожи:

  • Ширина и высота — 50 пикселей (чтобы не были слишком большими).
  • Название компонента — соответствует выполняемой функции (сложение, вычитание, деление и т.д.).
  • Картинка — соответствует функции.
  • Остальные настройки по умолчанию.

Макет приложения готов. Можно переходить к программированию.

Программирование

Что должно происходить в приложении? пользователь вводит число 1 и число 2 (или только число 1, если выбраны квадрат или квадратный корень), выбирает операцию, нажимает «равно», получает результат.
Первое, что нужно сделать — создать переменную, в которую будет записан номер операции.

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

Блоки для нажатия кнопок операций будут следующими:

Сама операция должна выполняться после того, как будет нажата кнопка «Равно». В этом случае не только произойдет математический расчет, но и выведется ответ в компонент «Результат». Запрограммируем её.

Может быть ошибка, если пользователь попытается делить на 0 или извлекать корень из отрицательного числа, но сообщение об этом будет выведено в надписи «Результат».

Собственно, на этом все. Можно формировать .apk файл и тестировать на устройстве.

Самостоятельная работа

Вы можете улучшить калькулятор, сделав его более удобным для конечного пользователя:

  • Сделайте скрытие второго поля для ввода числа, если выбрана операция возведения в квадрат или квадратного корня.
  • Добавьте дополнительное предупреждение, если при выборе деления в поле числа 2 стоит 0, или если при выборе квадратного корня в поле числа 1 стоит отрицательное число. проверка должна происходить до момента нажатия кнопки «Равно».
  • Добавьте кнопку «Очистить», которая будет стирать информацию в полях и результат.