2016-07-27 73 views
-1

我有,我有这个片段的活动....如何在java和android中使用trim?

et = (EditText) findViewById(R.id.et); 
tv = (TextView) findViewById(R.id.textView8); 
String name =et.getText().toString(); 
String a ="a"; 
String b ="b"; 
String c ="c"; 
String d ="d"; 
String e ="e"; 
String f ="f"; 
String g ="g"; 
String h ="h"; 
String a1 ="\u24B6"; 
String b1 ="\u24B7"; 
String c1 ="\u24B7"; 
String d1 ="\u24B9"; 
String e1 ="\u24BB"; 
String f1 ="\u24BB"; 
String g1 ="\u24BD"; 
String h1 ="\u24BD"; 
name =name.replaceAll(a,a1); 
name =name.replaceAll(b,b1); 
name =name.replaceAll(c,c1); 
name =name.replaceAll(d,d1); 
name =name.replaceAll(e,e1); 
name =name.replaceAll(f,f1); 
name =name.replaceAll(g,g1); 
name =name.replaceAll(h,h1); 
tv.setText(name.trim()); 

当写一个b或编辑文本显示空间Ç在文本视图

是什么解?

+0

可能是用过的字体不支持使用的unicode字符?为了测试,尝试使用不同的Unicode字符。此外,我会使用replace(char,char)而不是'replaceAll',它使用正则表达式(可能会使unicode出现问题?) – Robert

回答

0

您只从EditText开始阅读价值 - 当您开始活动时。有一个完整的工作示例:输入EditText时文本被替换。

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    final EditText et = (EditText) findViewById(R.id.et); 
    final TextView tv = (TextView) findViewById(R.id.textView8); 
    final String a = "a"; 
    final String b = "b"; 
    final String c = "c"; 
    final String d = "d"; 
    final String e = "e"; 
    final String f = "f"; 
    final String g = "g"; 
    final String h = "h"; 
    final String a1 = "\u24B6"; 
    final String b1 = "\u24B7"; 
    final String c1 = "\u24B7"; 
    final String d1 = "\u24B9"; 
    final String e1 = "\u24BB"; 
    final String f1 = "\u24BB"; 
    final String g1 = "\u24BD"; 
    final String h1 = "\u24BD"; 

    et.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void beforeTextChanged(final CharSequence s, final int start, final int count, final int after) { 

     } 

     @Override 
     public void onTextChanged(final CharSequence s, final int start, final int before, final int count) { 
      String name = et.getText().toString(); 
      name = name.replaceAll(a, a1); 
      name = name.replaceAll(b, b1); 
      name = name.replaceAll(c, c1); 
      name = name.replaceAll(d, d1); 
      name = name.replaceAll(e, e1); 
      name = name.replaceAll(f, f1); 
      name = name.replaceAll(g, g1); 
      name = name.replaceAll(h, h1); 
      tv.setText(name.trim()); 
     } 

     @Override 
     public void afterTextChanged(final Editable s) { 

     } 
    }); 
} 
+0

此活动在运行应用程序时停止 – pouyakarimdost

+0

您会得到什么错误? – pxsx

+0

对不起应用程序停止了 – pouyakarimdost

相关问题