Bagaimana cara menempatkan karakter spasi ke nama string dalam XML?

174

saya telah mendefinisikan beberapa string dalam strings.xmlfile. Sekarang saya perlu memberi ruang ekstra di antara beberapa angka dalam string. Ketika saya mengetik karakter spasi tambahan, ini tidak muncul di aplikasi.

Sebelum:

<string name="spelatonertext3">-4, 5, -5, 6, -6,

Dan jika saya menaruh ruang ekstra seperti ini:

<string name="spelatonertext3">-4,  5, -5,   6,  -6,

Itu hanya terlihat sama di aplikasi. Bagaimana saya bisa membuat karakter spasi menjadi string XML?

Andreas
sumber
Yah, itu tampak sama di halaman ini juga ... :) masalahnya adalah saya ingin beberapa ruang di antara angka-angka, bagaimana itu mungkin ..?
Andreas
Gunakan pemformatan kode untuk mempertahankan spasi (& <>konten) di SO. :)
Andrew Thompson

Jawaban:

405

untuk menggunakan ruang putih di xml sebagai penggunaan string &#160;. XML tidak akan mengambil ruang putih seperti itu. itu akan memangkas ruang putih sebelum mengaturnya. Jadi gunakan &#160;bukannya spasi putih tunggal

ρяσѕρєя K
sumber
1
Ini tidak berfungsi dengan wrap_content dari tampilan teks, ketika ruang terjadi di akhir teks. Tampilan teks tidak mempertahankan lebar yang diambil oleh karakter 'spasi'.
toobsco42
28
Ini akan menambah ruang yang tidak dapat dipecahkan. Ini berbeda dari ruang reguler dan tidak akan berfungsi dengan baik dengan fungsi-fungsi tertentu (XPath normalize-space, misalnya). Coba gunakan &#032;(ruang biasa) alih-alih &#160;. @ toobsco42
shwartz
Saya harus menggunakan &#160;alih-alih \u0020menempatkan spasi tanpa putus setelah kode area dalam nomor telepon. Jika tidak, nomor telepon dibungkus pada akhir baris setelah tanda kurung kode area tertinggal.
mharper
& # 032; ok jika Anda membutuhkan 1 ruang. Jika Anda meletakkan beberapa yang (& # 032; & # 032; ...) mereka dipangkas menjadi 1. Saya pikir itu adalah perilaku yang sama dengan ruang kosong normal sehingga tampaknya tidak berguna. Jika ditemukan juga saran tentang & # 009; (seharusnya menjadi karakter tab): tidak menampilkan apa pun. & # 160; bekerja dengan baik, itu yang saya butuhkan, terima kasih ρяσѕρєя K.
herve-guerin
57

Masukkan \ u0020 secara langsung dalam XML untuk blank yang ingin Anda pertahankan.

<string name="spelatonertext3">-4, \u00205, \u0020\u0020-5, \u00206, \u0020-6,</string>
K_Anas
sumber
24

Android tidak mendukung menjaga spasi di akhir string dalam file String.xml jadi jika Anda ingin spasi setelah string Anda perlu menggunakan unicode ini di antara kata-kata.

\ u0020

Ini adalah karakter ruang unicode.

saibaba vali
sumber
Ini bekerja untuk saya menggunakan Android Studio 3.6.2 dikompilasi ke Android 4.4. Terima kasih.
Cinta dan kedamaian - Joe Codeswell
11

Seperti yang telah disebutkan cara yang benar untuk memiliki spasi dalam file XML adalah dengan menggunakan \u0020karakter unicode untuk sebuah spasi.

Contoh:

<string name="spelatonertext3">-4,\u00205,\u0020-5,\u00206,\u0020-6</string>

Saran lain mengatakan untuk menggunakan &#160;atau &#032;tetapi ada dua kelemahan untuk ini. Kelemahan pertama adalah bahwa ini adalah karakter ASCII sehingga Anda mengandalkan sesuatu seperti TextView untuk menguraikannya. Kelemahan kedua adalah bahwa &#160;kadang-kadang dapat menyebabkan pembungkus aneh di TextViews.

MShipman
sumber
7

Varian ruang:

<string name="space_demo">|&#x20;|&#x2009;|&#x200A;|</string>

| SPACE | RUANG TIPIS | RUANG RAMBUT |

Andrey
sumber
1
Ini adalah yang termanis dan mengagumkan
Abdul Waheed
6

Ini harus bekerja juga. Gunakan kutipan untuk mempertahankan ruang

<string name="spelatonertext3">"-4,  5, -5,   6,  -6,"</string>
pcodex
sumber
1
Ini adalah jawaban terbersih (termudah untuk dibaca) menurut saya. Sayangnya kebanyakan orang mungkin tidak berhasil sejauh ini di daftar jawaban sebelum pindah.
DavidR
5

Masukkan &#160;file string.xml untuk menunjukkan satu ruang dalam proyek android.

maxxi
sumber
5

Anda juga dapat menggunakan berikut ini

<string name="spelatonertext3"> "-4,  5, -5,   6,  -6, "> </string>

Masukkan apa pun ke dalam " "(kutipan) dengan spasi, dan itu harus bekerja

Surjit Singh
sumber
1
Letakkan apa pun di "" (kutipan) dengan spasi, dan itu harus bekerja: INI BUKAN BEKERJA
Krunal Shah
3

Sesuai pertanyaan Anda jika Anda ingin menambahkan spasi lebih dari satu di sumber daya string, ada banyak opsi untuk menambahkan spasi antara karakter atau kata:

1.Dengan standar satu ruang, Anda dapat menambahkan langsung dalam file sumber daya string itu berfungsi dengan baik. tetapi jika memberikan lebih dari satu ruang di dalam file sumber daya string maka tidak termasuk spasi itu. mis. -4, 5, -5, 6, -6,

  1. Jika Anda ingin menambahkan lebih banyak spasi di dalam file sumber daya string, maka gunakan: - i. menambahkan unicode setelah karakter like

        <string name="test">-4,&#160;&#160;5,&#160;&#160;-5,&#160;&#160;6,&#160;&#160;-6,</string>

ii. Anda dapat menggunakan "\ u0020"

<string name="test">-4,\u0020\u0020 5,\u0020\u00205 -5,\u0020\u00205 6,\u0020\u00205 -6,</string>
Sagar Chorage
sumber
3

Jika Anda mencoba memberikan Space Antara 2 string ATAU Dalam file String Android maka lakukan ini dalam file string Anda. Terapkan ini sebelum "Nama string" yang ingin Anda tampilkan. \ u0020 \ u0020 Untuk Misalnya. \ u0020 \ u0020 \ u0020 \ u0020 \ u0020 \ u0020 Pembayaran

Rakesh Jha
sumber
2

xml: space = "preservate"

Bekerja seperti pesona.

Sunting: Salah. Sebenarnya, itu hanya berfungsi ketika konten terdiri dari ruang putih saja.

Tautan

PauLEffect
sumber
1

Jika hasilnya adalah HTML, maka dalam HTML banyak spasi ditampilkan sebagai satu ruang. Untuk mencegah hal ini, gunakan spasi non-breaking (xA0) sebagai ganti spasi biasa

Michael Kay
sumber
1

Satu-satunya cara saya bisa mendapatkan beberapa spasi di tengah-tengah string.

<string name="some_string">Before" &#x20; &#x20; &#x20;"After</string>

Before   After
aduh
sumber
0

Anda ingin tampilannya seperti "-4, 5, -5, 6, -6," (dua spasi), Anda dapat menambahkan kode berikut ke string.xml

<string name="spelatonertext3"> "-4,&#160;&#160;5,&#160;-5,&#160;&#160;6,&#160;&#160;-6,"</string>

  adalah tampilan satu spasi.

Hai Rom
sumber