2016-11-17 71 views
-5

在android中創建標籤評論系統與facebook相同。 在評論部分,如果我們插入@然後鍵入然後顯示朋友列表。並選擇一個朋友。我希望這種類型的評論系統與facebook相同。在android中創建標籤評論系統與facebook相同

+0

在EditText(或AutoCompleteTextView)上添加一個TextWatcher並監視輸入文本。如果您遇到'@',請觸發服務電話或從數據庫獲取相關匹配項。 –

+0

請用示例或代碼進行說明,謝謝 – user2002721

+4

「請用示例或代碼感謝解釋」即我太懶惰或者不能自己做這件事,所以會發出要求並希望將某人用作免費編碼服務。 – Steve

回答

1

您可以設置一個TextWatcher,只要您的EditText中的文本發生變化,TextWatcher就會被觸發。然後,在發現@之後,可以使用Regex查看是否有任何@name後跟空格。如果有,您可以彈出另一個UI元素,其中顯示與特定正則表達式匹配的朋友的ListView。這裏是我想出的一個例子:

// Declare listening as a member variable 
    commentInput.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { 

     } 

     @Override 
     public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { 
      // Listen until space 
      String text = charSequence.toString(); 
      if (text.contains("@")) { 
       listening = true; 
       int index = text.split("@").length; 
       String textToSearchFor = text.split("@")[index]; 
       // Use textToSearchFor to search for friends, 
       // and if you get results then set a UI element 
       // to appear: listView.setVisibility(View.VISIBLE); 
       // on click of ListView element, stop listening 
      } else if (text.substring(0, text.length() - 1).equals(" ")) { 
       // If the latest character is a space, then stop listening 
       listening = false; 
      } 
     } 

     @Override 
     public void afterTextChanged(Editable editable) { 

     } 
    }); 
+0

thanx Faraz我會嘗試你的代碼。 – user2002721

+1

不客氣,請立即嘗試,只是更新它。 – Faraz

+0

@ user2002721請標記我的答案,如果它工作正確。謝謝。 – Faraz