2016-07-23 26 views
2

我真的希望你能帮助我。我在Android中的应用程序清除或删除分配给主Activity上的editText对象的默认字符串,只要该值等于此处的文本“在此输入消息”,我将它分配给R .java文件作为“R.string.editTextOnStart”。下面的代码:如何清除EditText中的字符串点击它

public class MainActivity extends AppCompatActivity { 

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

     final TextView textView = (TextView) findViewById(R.id.textView); 
     final EditText editText = (EditText) findViewById(R.id.editText); 

     editText.setText(R.string.editTextOnStart); 

     textView.setText(R.string.textViewString); 

     //if(editText.getText().toString().equals(String.valueOf(R.string.editTextOnStart))) { 

      editText.setOnClickListener(new OnClickListener() { 
       @Override 
       public void onClick(View view) { 
        text = editText.getText().toString(); 

        if(text.equals(R.string.editTextOnStart)) { 
         editText.getText().clear(); 
        } 
       } 
      }); 
     //} 
     Button button = (Button) findViewById(R.id.button); 
     button.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       textView.setText(editText.getText().toString()); 
      } 
     }); 
    } 
} 

回答

4

而是这样做的,你可以指定以下使用hint

在您的布局xml文件,在你的EditText,添加此

android:hint="Enter your text here" 

这将在您开始活动时出现在您的编辑文本中,并在用户点击它时消失

+0

感谢Vidya Sagar和ShivBuyya,我真的很感激:) –

2

更好地使布局“在这里输入的消息”作为提示

android:hint="Enter a message here" 
+0

感谢Vidya Sagar和ShivBuyya,我真的很感激它:) –

0

它看起来像你的代码几乎是完美的,但问题是,你是比较变量text这是一个字符串直接到R.string.editTextOnStart这是一个int。要获得分配给R.string.editTextOnStart的实际值,您需要使用方法[Context.getString(R.string.editTextOnStart)][1]。所以,你的代码应该是这样的:

... 
editText.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View view) { 
    text = editText.getText().toString(); 

    if(text.equals(getApplicationContext().getString(R.string.editTextOnStart))) { 
    editText.setText(""); 
    } 
} 
}); 
... 
0

写在你的onclick听众

((EditText) findViewById(R.id.yoursXmlId)).setText(""); 

或者设置文本提示在XML布局

android:hint="Enter Name"