Muszę mieć możliwość wstawienia znaku „-” w ciągu znaków wewnątrz mojego strings.xml
pliku.
Mój problem polega na tym, że kiedy wkładam strunę, czyli "1261eba2-9d8c-11e1-93e3-40409e0f44a1"
zaćmienie krzyczy:
W tym wierszu znaleziono wiele adnotacji: - Zastąp „-” znakiem „półpauza” (-, &; # 8211;)
Jak mogę to naprawić?
Odpowiedzi:
Tak więc, kiedy czytasz ten komunikat o błędzie, odpowiedź będzie, że trzeba wymienić
-
z–
. Wtedy powinno działać dobrze =)http://en.wikipedia.org/wiki/Dash
źródło
Pozostałe odpowiedzi są OK, jeśli chcesz wyświetlić ciąg użytkownikowi. Użytkownik tak naprawdę nie jest w stanie odróżnić „prawdziwego” myślnika od oszustwa Unicode.
Ale jeśli naprawdę musisz mieć myślnik (np. Ponieważ ten ciąg jest gdzieś używany jako hasło lub jako klucz url dla interfejsu API), możesz po prostu użyć tego formatu:
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="TypographyDashes"> <string name="EVA_API_KEY">3c42b725-5e20-41c8-982f-dee40be8a05b</string> </resources>
Ostrzeżenie zostanie usunięte, a ciąg można odczytać za pomocą zwykłego:
getResources().getString(R.string.EVA_API_KEY);
źródło
Użyj ukośnika (\) przed każdym znakiem specjalnym. jak ja \ i Android.
To nazywa się znakiem ucieczki. (\)
źródło
Odniesienie
Wystarczy wymienić
-
z–
ponieważ po wpisaniu na klawiaturze kreskę, XML czyta myślnik jako minus, to wszystko.źródło
Użyj łącznika (& # 45) (-) ...
<string name="abc">Welcome - Bro...</string>
i Aby uzyskać więcej symboli, użyj poniższego łącza
http://www.degraeve.com/reference/specialcharacters.php
Cieszyć się...
źródło
Prawdopodobnie masz to:
<string name="test1">1261eba2-9d8c-11e1-93e3-40409e0f44a1</string>
Ale potrzebujesz jednego z tych:
<string name="test2">1261eba2–9d8c–11e1–93e3–40409e0f44a1</string> <string name="test3">1261eba2–9d8c–11e1–93e3–40409e0f44a1</string>
W drugim - jest zastępowane przez -. Trudno dostrzec różnicę wizualnie.
źródło
–
wygląda na to, że jest to sekwencja ucieczki dla symbolu długiej kreski (m-myślnik).Skrót do szybkiej naprawy w Eclipse to domyślnie
Ctrl
+1
, aw Android Studio domyślnieAlt
+Enter
.źródło