Ustawiam tekst za pomocą setText () w następujący sposób.
prodNameView.setText("" + name);
prodOriginalPriceView.setText("" + String.format(getString(R.string.string_product_rate_with_ruppe_sign), "" + new BigDecimal(price).setScale(2, RoundingMode.UP)));
W tym pierwszym jest proste użycie, a drugim jest ustawienie tekstu z formatowaniem tekstu.
Android Studio jest tak bardzo interesujące, że skorzystałem z Menu Analyze -> Code Cleanup
i otrzymałem sugestię w dwóch powyższych liniach, takich jak.
Nie łącz tekstu wyświetlanego z setText. Użyj ciągu zasobów z symbolami zastępczymi. mniej ... (Ctrl + F1)
Podczas wywoływania TextView # setText:
- Nigdy nie wywołuj Number # toString () w celu sformatowania liczb; nie będzie poprawnie obsługiwał separatorów ułamków i cyfr specyficznych dla ustawień regionalnych. Zamiast tego rozważ użycie formatu String # z odpowiednimi specyfikacjami formatu (% d lub% f).
- Nie przekazuj literału ciągu (np. „Hello”), aby wyświetlić tekst. Tekst zakodowany na stałe nie może być poprawnie przetłumaczony na inne języki. Zamiast tego rozważ użycie ciągów zasobów systemu Android.
- Nie twórz wiadomości przez łączenie fragmentów tekstu. Takie wiadomości nie mogą być poprawnie przetłumaczone.
Co mogę z tym zrobić? Każdy może pomóc wyjaśnić, co to jest i co mam zrobić?
String
dosetText()
. Np .:setText(name)
zamiastsetText("" + name)
. Ponieważ jeśli połączysz tekst, nie zostanie on przetłumaczony tak, jak używasz tekstu zakodowanego na sztywno, o czym informuje wiadomość