从文本框中获取数据时,我获得了空数据。
我的代码是:
EditText msg=(EditText)findViewById(R.id.Et_Msg);
String setMsg=msg.getText().toString();
Log.v("Messge","Message::"+setMsg);
请告诉我哪里错了?
答案 0 :(得分:2)
从EditText获取数据时,您必须create a listener
获取值为null
的示例按钮单击侦听器。
举个例子:
public class A extends Activity implements OnClickListener{
Button btn;
EditText edt;
@Override
public void onCreate(Bundle saved){
super.onCreate(saved);
edt = (EditText) findViewById(R.id.your_id);
btn = (Button) findViewById(R.id.your_id);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v){
if(v == btn){
String setMsg=edt.getText().toString();
Log.v("Messge","Message::"+setMsg);
}
}
}
答案 1 :(得分:2)
看看..你在做什么...在获得EditText
之后立即调用getText()
的对象...在逻辑上思考..显然没什么(它应该返回空白但是不知道为什么它会在EditText
中隐藏null,除非你从xml
获得它......这样的东西;
<EditText
...
android:text="Hey there"
...
/>
试试这个..或者在某个按钮点击下移动getText()
电话。
答案 2 :(得分:2)
请替换您的以下
String setMsg=msg.getText().toString();
带
String setMsg = String.valueOf(msg.getText());
请尝试以上行。你的问题将得到解决。
答案 3 :(得分:2)
这是你的代码,
EditText msg=(EditText)findViewById(R.id.Et_Msg);
String setMsg=msg.getText().toString();
Log.v("Messge","Message::"+setMsg);
NullPointerException
。解决方案:我建议您将行String setMsg=msg.getText().toString();
移动到您实际要使用EditText值的其他位置。