Android 计算器中的删除按钮

Android 计算器中的删除按钮,android,calculator,Android,Calculator,我正在创建一个计算器,我做了一个删除按钮,但当我运行应用程序时,它崩溃并停止。 这是我的java代码: 请帮帮我 private static String removeLastChar(String str) { return str.substring(0,str.length()-1); 还有这个 bdelete.setOnClickListener(new View.OnClickListener() { @Override

我正在创建一个计算器,我做了一个删除按钮,但当我运行应用程序时,它崩溃并停止。 这是我的java代码:

请帮帮我

       private static String removeLastChar(String str) {
       return str.substring(0,str.length()-1);
还有这个

        bdelete.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            editText.setText(removeLastChar(editText.getText().toString()));
        }
       });
这是我的日志

java.lang.RuntimeException: Unable to start activity   ComponentInfo{player.android.com.layout/player.android.com.layout.MyActivity}:  java.lang.NullPointerException
         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
         at android.app.ActivityThread.access$600(ActivityThread.java:141)
         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
         at android.os.Handler.dispatchMessage(Handler.java:99)
         at android.os.Looper.loop(Looper.java:137)
         at android.app.ActivityThread.main(ActivityThread.java:5103)
         at java.lang.reflect.Method.invokeNative(Native Method)
         at java.lang.reflect.Method.invoke(Method.java:525)
         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
         at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.NullPointerException
         at player.android.com.layout.MyActivity.onCreate(MyActivity.java:68)
         at android.app.Activity.performCreate(Activity.java:5133)
         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
         at android.app.ActivityThread.access$600(ActivityThread.java:141)
         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
         at android.os.Handler.dispatchMessage(Handler.java:99)
         at android.os.Looper.loop(Looper.java:137)
         at android.app.ActivityThread.main(ActivityThread.java:5103)
         at java.lang.reflect.Method.invokeNative(Native Method)
         at java.lang.reflect.Method.invoke(Method.java:525)
         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
         at dalvik.system.NativeStart.main(Native Method)

使用此代码,您将删除所有字符,因为您说的是从0到长度为1的字符中删除

str.substring(0,str.length()-1);
例如:

String ll=“Lorem Ipsum是简单的”

如果你说
String ii=ll.substring(0,2)

您将得到:
ii==“Lor”

试试这样的方法:

   public String remove(){
        String character = "2313213";
        String character1 = "";
        for(int i=0;i<character.length()-1;i++){
            character1 += character.charAt(i);
        }

        return character1;
    }
公共字符串删除(){
字符串字符=“2313213”;
字符串字符1=“”;

对于(inti=0;我这里是您的日志猫???显示您的MyActivity.java:68?prakash这里是MyActivity.java:68 bdelete.setOnClickListener(新视图.OnClickListener(){@Override public void onClick(视图视图视图){editText.setText(removeLastChar(editText.getText().toString());});是的,我已将EditText初始化为EdditText我只想删除1个字符我已做了一个明确的按钮现在只想删除最后1个字符在哪里放置代码?str.substring(0,str.length()-1);或者只需将此公共字符串删除(){String character=“2313213”;String character1=“”;对于(int i=0;i输出我的代码“remove”或子字符串(str.length()-1,str.length());错误在此行bdelete.setOnClickListener(new View.OnClickListener(){试试这个:editText.setText(removeLastChar(editText.getText().toString())+“”);
This is late but help someone.....

delete.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        String s=editText.getText().toString();
        s=s.substring(0,s.lenght()-1)
        editText.setText(s);
    }
   });

this helps for deleting last digit from editText.
i also refer this from
http://stackoverflow.com/questions/21893558/what-is-the-best-way-to-delete-the-last-digit-in-a-calculator-app