No tak, z przyzwyczajenia pomyślałem, że to wydobycie textu z EditText.
.toString() na CharSequence używamy tak samo. Korzystanie z dokumentacji to podstawa : )
Czas na dokładną analizę problemu (wg mnie jest taka):
1) CharSequence jest interfejsem, jego pochodne interfejsy to m.in. Spannable i Editable
2) metoda getText() wołana na TextView zwraca obiekt którego klasa implementuje albo Spannable albo Editable (zatem także CharSequence). Takie klasy to np SpannableStringBuilder lub SpannableString. Sam interfejs nie ma metody toString() ale ponieważ każdy obiekt ma tą metodę zatem można ją wywołać.
3) skoro porównywano obiekt typu SpannableStringBuilder (SpannableString) z obiektem typu String, zatem instrukcja 'if' zwracała false, bo metoda equals() sprawdza czy obiekty są tego samego typu i czy mają tą samą "zawartość".
4) dodanie toString() jak wspomnieli wcześniej @jestemnawakacjach i @LordTwaroog załatwia sprawę 🙂
Wszystko powyższe można sobie sprawdzić w kodzie źródłowym dla widget'u TextView i oczywiście w dokumentacji.