Swoją karierę piłkarską Johansson rozpoczął w klubie IF Hallby. Następnie został zawodnikiem klubu Kalmar FF. W 2009 roku awansował do kadry pierwszego zespołu Kalmaru. 17 października 2009 zadebiutował w Allsvenskan w zremisowanym 2:2 domowym meczu z GAIS. W Kalmarze występował do końca 2011 roku.
W styczniu 2012 Johansson został sprzedany za 1,5 miliona euro do AZ Alkmaar. W zespole z Alkmaaru swój debiut zaliczył 1 kwietnia 2012 w zremisowanym 2:2 wyjazdowym spotkaniu z Vitesse Arnhem. W maju 2013 wystąpił w wygranym 2:1 meczu finału Pucharu Holandii z PSV Eindhoven. Po ponad pięciu latach gry w Holandii wygasł jego kontrakt z klubem z Alkmaar i zawodnik związał się umową z Panathinaikos AO.
Johansson grał w młodzieżowych reprezentacjach Szwecji na różnych szczeblach wiekowych. W dorosłej reprezentacji Szwecji zadebiutował 28 maja 2014 w przegranym 0:1 towarzyskim meczu z Danią, rozegranym w Kopenhadze. W 70. minucie tego meczu zmienił Mikaela Lustiga.