XML'de bir dize adına boşluk karakteri nasıl eklenir?


174

bazı dizeleri tanımladım strings.xmldosyada . Şimdi dizedeki bazı sayılar arasında fazladan boşluk bırakmam gerekiyor. Ekstra boşluk karakterleri yazdığımda bu uygulamada görünmüyor.

Önce:

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

Ve eğer böyle fazladan boşluk koyarsam:

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

Sadece uygulamada aynı görünüyor. XML dizesine nasıl boşluk karakteri yapabilirim?


Peki, bu sayfada da aynı görünüyordu ... :) şey sayılar arasında biraz boşluk istiyorum, bu nasıl mümkün ..?
Andreas

SO'daki boşlukları (& <>içeriği) korumak için kod biçimlendirmesi kullanın . :)
Andrew Thompson

Yanıtlar:


405

xml'de dize kullanımı olarak beyaz boşluk kullanmak &#160;. XML olduğu gibi beyaz alan kaplamaz. ayarlamadan önce beyaz alanı kesecektir. &#160;Tek boşluk kullanmak yerine kullanın


1
Bu, metnin sonunda boşluk oluştuğunda bir metin görünümünün wrap_content öğesiyle çalışmaz. Metin görünümü, 'boşluk' karakteri tarafından kullanılan genişliği korumaz.
toobsco42

28
Bu, kırılamaz bir alan ekleyecektir. Normal bir alandan farklıdır ve belirli işlevlerle iyi çalışmaz ( normalize-spaceörneğin XPath'ler ). &#032;Bunun yerine (normal boşluk) kullanmayı deneyin &#160;. @ toobsco42
shwartz

Bir telefon numarasındaki alan kodundan sonra ara vermeden boşluk bırakmak &#160;yerine kullanmak zorunda kaldım \u0020. Aksi takdirde, telefon numarası alan kodunun sondaki parantezinden sonra satırın sonuna sarılıyordu.
mharper

& # 032; 1 alana ihtiyacınız varsa tamam. Birkaç tane koyarsanız (& # 032; & # 032; ...) 1'e kesilirler. Bence bu normal boşlukla aynı davranıştı, bu yüzden işe yaramaz görünüyor. Ayrıca bulunursa & # 009; (sekme karakteri olması gerekir): hiçbir şey göstermez. & # 160; iyi çalışıyor, ihtiyacım olan şey, teşekkürler ρяσѕρєя K.
herve-guerin

57

Korumak istediğiniz bir boşluk için \ u0020 dosyasını doğrudan XML'ye ekleyin.

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

24

Android, String.xml dosyasında dizenin sonundaki boşlukların tutulmasını desteklemediğinden, dizeden sonra boşluk istiyorsanız, bu unicode'u sözcükler arasında kullanmanız gerekir.

\ u0020

Unicode bir boşluk karakteri.


Bu benim için Android 4.4 derlenmiş Android Studio 3.6.2 kullanarak çalıştı. Teşekkürler.
Sevgi ve barış - Joe Codeswell

11

Daha önce de belirtildiği gibi, bir XML dosyasında boşluk bulundurmanın doğru yolu, bir boşluk \u0020için unicode karakter kullanmaktır.

Misal:

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

Diğer öneriler kullanmak için söylediler &#160;ya da &#032;bunun iki dezavantajı var. İlk dezavantajı, bunların ASCII karakterleri olmasıdır, bu nedenle bunları ayrıştırmak için TextView gibi bir şeye güvenirsiniz. İkinci dezavantajı, &#160;bazen TextView'lerde garip bir sargıya neden olabilir.


7

Alan değişkenleri:

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

| MEKAN | İNCE ALAN | SAÇ ALANI |


1
Bu en tatlı ve en harika olanı
Abdul Waheed

6

Bu da işe yarayacak. Alanı korumak için tırnak işareti kullanın

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

1
Bence bu en temiz (okunması en kolay) cevaptır. Maalesef çoğu insan muhtemelen devam etmeden önce cevap listesinde bu kadar ilerlemiyor.
DavidR

5

&#160;Bir android projesinde tek bir boşluk belirtmek için string.xml dosyasını koyun .


5

Aşağıdakileri de kullanabilirsiniz

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

" "Boşluk içeren herhangi bir şey koyun (tırnak)


1
Boşluk "" (tırnak) içine bir şey koyun ve işe yarayacak: BU ÇALIŞMAYIYOR
Krunal Şah

3

Sorunuza göre, dize kaynaklarına birden fazla boşluk eklemek istiyorsanız, karakter veya kelime arasında boşluk eklemek için birçok seçenek vardır:

1. varsayılan olarak bir boşluk doğrudan dize kaynak dosyasına ekleyebilirsiniz iyi çalışıyor. ancak dize kaynakları dosyası içinde birden fazla boşluk verirse bu boşlukları hariç tutar. Örneğin . -4, 5, -5, 6, -6,

  1. Dize kaynak dosyasının içine daha fazla boşluk eklemek istiyorsanız şunu kullanır: - i. gibi karakterden sonra unicode ekleme

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

ii. "\ u0020" kullanabilirsiniz

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

3

Eğer android 2 dize VEYA dize dosyası arasında boşluk vermeye çalışıyorsanız o zaman dize dosyasında bunu. Bunu göstermek istediğiniz "Dize adınızdan" önce uygulayın. \ u0020 \ u0020 Örn. \ u0020 \ u0020 \ u0020 \ u0020 \ u0020 \ u0020Payment


2

xml: space = "korumak"

Tıkır tıkır çalışıyor.

Düzenleme: Yanlış. Aslında, yalnızca içerik yalnızca beyaz boşluklardan oluştuğunda çalışır.

bağlantı


1

Çıktı HTML ise, HTML'de birden çok boşluk tek bir boşluk olarak görüntülenir. Bunu önlemek için, normal boşluklar yerine kırılmaz boşluklar (xA0) kullanın.


1

Dize ortasında birden çok boşluk elde etmenin tek yolu.

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

Before   After

0

"-4, 5, -5, 6, -6," (iki boşluk) gibi görüntülenmesini istiyorsanız string.xml dosyasına aşağıdaki kodu ekleyebilirsiniz.

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

  bir boşluk görüntüler.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.