Дак почему вылетает ошибка, почему он не хочет хавать число c отрицательным знаком и делать с ним минус со вторым числом? (-2 - 2) вернёт вылет приложения
(dis.substring(0, dis.indexOf(operator) - 1)); // берём первое число от начала строки до оператора(оператор не берём)
как влиться в мир Android разработки правильнее ?