1. 程式人生 > >TextView獲取服務端下發文字攜帶\n不顯示換行解決

TextView獲取服務端下發文字攜帶\n不顯示換行解決

一、問題描述

有的時候客戶端希望顯示多個段落的文字,而服務端直接下發一段文字客戶端就可以顯示整個段落,有的時候需要換行,我們希望服務端文字中攜帶“\n”就可以使客戶端換行,但實際開發的結果確並不如我們預想的。

二、解決思路

  1. 首先嚐試textView是否支援\n換行,在xml中給text屬性設定一段文字,並加入“\n”換行符,實時展示可以換行。
  2. 在Activity中動態設定一段文字並設定換行符,也是可以展示換行的。
  3. 服務端下發一段文字其中攜帶換行符“\n”,oh no , 為什麼不可以
  4. 猜想是不是客戶端給將轉義字元處理了,將其處理成字元了,最終經過驗證,的確可以解決。

三、最終解決方案

msg = msg.replace("\\n", "\n");

成功解決 !

四、補充

其實對於服務端下發多格式展示還有另一種實現方式——“利用TextView顯示html特性”。 它不光可以展示多段落,還可以展示多種文字樣式,比如一段文字中存在多種文字顏色,當然還有其它的,總之很強大。 這也算是一種實現思路,提供以供參考。