0 java string android android-edittext
我有以下问题.我想检查一下我EditText是否在Button点击时包含值/字符串.开始了:
private EditText Name;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
Name = (EditText)findViewById(R.id.RegisterName);
}
public void RegisterClick(View v)
{
String StrName = Name.getText().toString();
if(StrName != "")
Toast.makeText(null, "Got My String.", Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)
我还把它放到layout.xml中,它不是整个代码
<Button
android:onClick="RegisterClick" />
Run Code Online (Sandbox Code Playgroud)
所以现在,当我尝试调试时,调试器在我通过顺序之后关闭,我想从中设置StrName EditText.
它在哪里崩溃?
我认为这是崩溃:
Toast.makeText(null, "Got My String.", Toast.LENGTH_LONG).show();
Run Code Online (Sandbox Code Playgroud)
您无法将null上下文传递给makeText.如果你在一个活动中传递它,this否则(如果你在一个片段中)传递一个getActivity()
此外,在Java中,永远不要使用!=或==使用字符串,但总是s1.equals(s2)(并且在进行空检查之前)