空指针错误String str=edit.getText().toString().trim();报错

问题描述

importjava.text.DecimalFormat;importandroid.os.Bundle;importandroid.app.Activity;importandroid.content.Intent;importandroid.hardware.Sensor;importandroid.hardware.SensorEvent;importandroid.hardware.SensorEventListener;importandroid.hardware.SensorManager;importandroid.text.StaticLayout;importandroid.view.Menu;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.Toast;publicclassActivity2extendsActivity{privateButtonbuttonx=null;privateButtonbuttony=null;privateButtonbuttonz=null;privateButtonbuttonxy=null;privateButtonbuttonxz=null;privateButtonbuttonyz=null;privateButtonbuttonxyz=null;privateButtonbutton=null;privateEditTextedit=null;privatefloatvalues[];privateSensorManagermySensorManager=null;privateSensormyAccelerometer;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main2);buttonx=(Button)this.findViewById(R.id.buttonx);buttony=(Button)this.findViewById(R.id.buttony);buttonz=(Button)this.findViewById(R.id.buttonz);buttonxy=(Button)this.findViewById(R.id.buttonxy);buttonxz=(Button)this.findViewById(R.id.buttonxz);buttonyz=(Button)this.findViewById(R.id.buttonyz);buttonxyz=(Button)this.findViewById(R.id.buttonxyz);button=(Button)this.findViewById(R.id.button);edit=(EditText)this.findViewById(R.id.edit);mySensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);myAccelerometer=mySensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);buttonx.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubIntentintent=newIntent();intent.setClass(Activity2.this,Activity2x.class);startActivity(intent);}});}publicvoidonResume(){super.onResume();mySensorManager.registerListener(mySensorListener,myAccelerometer,SensorManager.SENSOR_DELAY_NORMAL);}protectedvoidonPause(){super.onPause();mySensorManager.unregisterListener(mySensorListener);}privateSensorEventListenermySensorListener=newSensorEventListener(){@OverridepublicvoidonSensorChanged(SensorEventevent){//TODOAuto-generatedmethodstubvalues=event.values;Doubledz=values[2]-9.81;DecimalFormatdf=newDecimalFormat("0.00");Doubledxy=Math.sqrt(values[0]*values[0]+values[1]*values[1]);Doubledxz=Math.sqrt(values[0]*values[0]+dz*dz);Doubledyz=Math.sqrt(values[1]*values[1]+dz*dz);Doubledxyz=Math.sqrt(values[0]*values[0]+values[1]*values[1]+dz*dz);buttonx.setText("X轴方向上的加速度="+df.format(values[0]));buttony.setText("Y轴方向上的加速度="+df.format(values[1]));buttonz.setText("Z轴方向上的加速度="+df.format(dz));buttonxy.setText("X与Y方向上的和加速="+df.format(dxy));buttonxz.setText("X与Z方向上的和加速="+df.format(dxz));buttonyz.setText("Y与Z方向上的和加速="+df.format(dyz));buttonxyz.setText("合加速度="+df.format(dxyz));}@OverridepublicvoidonAccuracyChanged(Sensorsensor,intaccuracy){//TODOAuto-generatedmethodstub}};publicvoidonRun(){Stringstr=edit.getText().toString().trim();if(str!=null){Doublet1=Double.parseDouble(str);longt=(long)(t1*1000);try{Thread.sleep(t);}catch(InterruptedExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}}}

解决方案

解决方案二:
edit.getText().toString().trim();你这个分别判断下.edit是不是nullgetText方法返回的是不是nul得一个个判断.
解决方案三:
先用TextUtil(edit.getText())判断是不是空,不空才能.toString().trim()吧

时间: 2024-12-23 08:41:35

空指针错误String str=edit.getText().toString().trim();报错的相关文章

c++-在头文件里定义一个string name; 变量,编译报错

问题描述 在头文件里定义一个string name: 变量,编译报错 //Parent.h class Parent { public: Parent(void); ~Parent(void); private: string name; }; //main.cpp #include #include #include "Parent.h" using namespace std; void main() { system("pause"); } //Parent.

看着是odac的错误,但是只有其中一个模块报错,其他模块都没有问题

问题描述 看着是odac的错误,但是只有其中一个模块报错,其他模块都没有问题

一运行这个脚本就出现错误(缺少对象IE),FF下没报错~

问题描述 代码如下:执行的时候始终提示脚本有错误:缺少对象;根据URL地址里的参数来判断参数名,如果参数为多个的话用'&'分割!functionGetUrlParms(){varargs=newObject();varquery=location.search.substring(1);//获取查询串varpairs=query.split("&");//在逗号处断开for(vari=0;i<pairs.length;i++){varpos=pairs[i].in

eclipse 错误-eclipse导入的项目。全报错啊 怎么解决 有视频教程吗每个项目都报错

问题描述 eclipse导入的项目.全报错啊 怎么解决 有视频教程吗每个项目都报错 eclipse导入的项目.全报错啊 怎么解决 有视频教程吗每个项目都报错 解决方案 clean 就行了 没那么简单吧 解决方案二: 可能是eclipse和项目的java版本不一致,也有可能是项目的包没有导入,然后再重新clean一下 解决方案三: jdk问题吗?jdk问题吗?估计是~ 解决方案四: eclipse导入别的项目报错问题eclipse 导入 java项目报错导入Android项目后Eclipse报错

typeerror-Python报错list indices must be integers, not str

问题描述 Python报错list indices must be integers, not str 分别是代码和报错,求大神们指点一二 解决方案 若是corterm是整数字符串,则把tfidf[corterm]改为tfidf[int(corterm)]即可. 解决方案二: corterm要为int类型,不能是字符串 解决方案三: 错误解释很清楚:你的列表的索引必须是int类型不能为str. 并且按照尝试,数组的下标一般都是整型的.

jsp 页面这样,然后服务器抛出空指针错误

问题描述 jsp 页面这样,然后服务器抛出空指针错误 <%@ page contentType = "text/html;charset= gbb2312" %> <%@ page language = "java" pageEncoding = "gb2312" %> <%@ page import = "java.util.*" %> <%@ page import = "

jdbcdaosupport-Spring mvc 空指针错误

问题描述 Spring mvc 空指针错误 LoginController @Controller public class LoginController { @RequestMapping("test") public void login() { LoginServiceImp loginService = new LoginServiceImp(); loginService.loadUserInfo(); } } LoginServiceImp public class Lo

图片-Eclipse编译Java文件出现空指针错误,求大神指教如何改正

问题描述 Eclipse编译Java文件出现空指针错误,求大神指教如何改正 另外出现错误的代码 主函数 public static void main(String[] args) { Login login = new Login(RELOAD); login.setVisible(true); } public Login() { super(); initialize(); } public Login(boolean reload) { super(); initialize(); ne

socket-Android:Method getText().tostring()出了问题!请问要怎么修改?

问题描述 Android:Method getText().tostring()出了问题!请问要怎么修改? public void connect() { AsyncTask read = new AsyncTask() { private String[] values; @Override protected Void doInBackground(Void... arg0) { try { socket = new Socket(**ip.getText().toString(),** 1