Reddington91 2017-05-06 15:04 采纳率: 0%
浏览 817

android SQLite数据库做完了以后程序运行不了,把有关数据库所有东西删了以后就可以运行

 package com.test.mark4;

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.ContentValues;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;


public class function31 extends Activity{
    private MyDatabaseHelper dbHelper;
    EditText cs,dh,hsds,qsds;
    TextView gcc,t1,t2,t3,t4,t5,t6,t7;
    Button btn1,btn2,btn3,btn4,btn6,btn7;
    int num=0,v1=0,s=1;
    Button back;
    Button btn[]=new Button[25];
    double j,x;//平均高程差
    double[]d=new double[25];

    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
        setContentView(R.layout.function31_layout);
        dbHelper=new MyDatabaseHelper(this,"data.db",null,1);
        back=(Button)findViewById(R.id.head_TitleBackBtn);//返回按钮
        back.setOnClickListener(new OnClickListener(){
            public void onClick(View v){
                finish();
            }
        });

        cs=(EditText)findViewById(R.id.editText1);
        dh=(EditText)findViewById(R.id.editText2);
        hsds=(EditText)findViewById(R.id.editText3);
        qsds=(EditText)findViewById(R.id.editText4);
        btn1=(Button)findViewById(R.id.button1);
        btn2=(Button)findViewById(R.id.button2);
        btn6=(Button)findViewById(R.id.button5);
        btn7=(Button)findViewById(R.id.button6);
        gcc=(TextView)findViewById(R.id.textView8);
        btn3=(Button)findViewById(R.id.button3);
        btn4=(Button)findViewById(R.id.button4);
        t1=(TextView)findViewById(R.id.textView1);
        t2=(TextView)findViewById(R.id.textView2);
        t3=(TextView)findViewById(R.id.textView3);
        t4=(TextView)findViewById(R.id.textView4);
        t5=(TextView)findViewById(R.id.textView5);
        t6=(TextView)findViewById(R.id.textView6);
        t7=(TextView)findViewById(R.id.textView7);

        final LinearLayout l=(LinearLayout)findViewById(R.id.view);

        btn4.setVisibility(View.INVISIBLE);
        cs.setVisibility(View.INVISIBLE);
        dh.setVisibility(View.INVISIBLE);
        hsds.setVisibility(View.INVISIBLE);
        qsds.setVisibility(View.INVISIBLE);
        btn1.setVisibility(View.INVISIBLE);
        btn2.setVisibility(View.INVISIBLE);
        btn6.setVisibility(View.INVISIBLE);
        btn7.setVisibility(View.INVISIBLE);
        gcc.setVisibility(View.INVISIBLE);
        t1.setVisibility(View.INVISIBLE);
        t2.setVisibility(View.INVISIBLE);
        t3.setVisibility(View.INVISIBLE);
        t4.setVisibility(View.INVISIBLE);
        t5.setVisibility(View.INVISIBLE);
        t6.setVisibility(View.INVISIBLE);
        t7.setVisibility(View.INVISIBLE);

        btn3.setOnClickListener(new OnClickListener(){//+
            public void onClick(View v){
                num+=1;
                btn[num]=new Button(function31.this);
                btn[num].setId(num);
                btn[num].setText(String.valueOf(num));
                l.addView(btn[num]);

                if(num!=0) {
                btn4.setVisibility(View.VISIBLE);
                cs.setVisibility(View.VISIBLE);
                dh.setVisibility(View.VISIBLE);
                hsds.setVisibility(View.VISIBLE);
                qsds.setVisibility(View.VISIBLE);
                btn1.setVisibility(View.VISIBLE);
                btn2.setVisibility(View.VISIBLE);
                btn6.setVisibility(View.VISIBLE);
                btn7.setVisibility(View.VISIBLE);
                gcc.setVisibility(View.VISIBLE);
                t1.setVisibility(View.VISIBLE);
                t2.setVisibility(View.VISIBLE);
                t3.setVisibility(View.VISIBLE);
                t4.setVisibility(View.VISIBLE);
                t5.setVisibility(View.VISIBLE);
                t6.setVisibility(View.VISIBLE);
                t7.setVisibility(View.VISIBLE);
                }

                    btn[num].setOnClickListener(new OnClickListener(){//监视新建button

                        @Override
                        public void onClick(View v) {
                            // TODO Auto-generated method stub
                            s=v.getId();
                            SharedPreferences sj = getSharedPreferences(String.valueOf(s),0);//SharedPreferences输出信息
                            String Str1=sj.getString("cs", "");
                            String Str2=sj.getString("dh", "");
                            String Str3=sj.getString("hsds", "");
                            String Str4=sj.getString("qsds", "");
                            String Str5=sj.getString("gcc", "");
                            cs.setText(Str1);
                            dh.setText(Str2);
                            hsds.setText(Str3);
                            qsds.setText(Str4);
                            gcc.setText(Str5);

                        }

                    });

            }
        });

        btn4.setOnClickListener(new OnClickListener(){//+
            public void onClick(View v){
                    l.removeView(btn[num]);;
                    num-=1;
                    if(num==0){
                    btn4.setVisibility(View.INVISIBLE);
                    cs.setVisibility(View.INVISIBLE);
                    dh.setVisibility(View.INVISIBLE);
                    hsds.setVisibility(View.INVISIBLE);
                    qsds.setVisibility(View.INVISIBLE);
                    btn1.setVisibility(View.INVISIBLE);
                    btn2.setVisibility(View.INVISIBLE);
                    btn6.setVisibility(View.INVISIBLE);
                    btn7.setVisibility(View.INVISIBLE);
                    gcc.setVisibility(View.INVISIBLE);
                    t1.setVisibility(View.INVISIBLE);
                    t2.setVisibility(View.INVISIBLE);
                    t3.setVisibility(View.INVISIBLE);
                    t4.setVisibility(View.INVISIBLE);
                    t5.setVisibility(View.INVISIBLE);
                    t6.setVisibility(View.INVISIBLE);
                    t7.setVisibility(View.INVISIBLE);
                    }
            }
        });

        btn1.setOnClickListener(new OnClickListener(){//计算
            public void onClick(View v){
                String Str1=cs.getText().toString();
                String Str2=dh.getText().toString();
                String numStr1=hsds.getText().toString();
                String numStr2=qsds.getText().toString();
                Pattern p = Pattern.compile("\\d+\\.\\d+$|-\\d+\\.\\d+$|^\\d+$|-\\d+$");
                Matcher n=p.matcher(numStr1);
                Matcher m=p.matcher(numStr2);
                if(n.matches()&m.matches()){

                double a=Double.parseDouble(numStr1);
                double b=Double.parseDouble(numStr2);
                double c=(a-b)/2;
                d[s]=c;
                gcc.setText(String.valueOf(c));
                String Str3=gcc.getText().toString();
                SharedPreferences sj = getSharedPreferences(String.valueOf(s),0);//SharedPreferences记录信息
                sj.edit().clear().commit();
                Editor editor=sj.edit();
                editor.putString("cs", Str1);
                editor.putString("dh", Str2);
                editor.putString("hsds", numStr1);
                editor.putString("qsds", numStr2);
                editor.putString("gcc", Str3);
                editor.commit();

                //SQLite
                SQLiteDatabase db=dbHelper.getWritableDatabase();
                ContentValues values=new ContentValues();
                values.put("cs", Str1);
                values.put("dh", Str2);
                values.put("hsds", numStr1);
                values.put("qsds", numStr2);
                values.put("gcc", Str3);
                db.insert("f31", null, values);
                values.clear();
            }

            else
            {
                AlertDialog.Builder dialog=new AlertDialog.Builder(function31.this);
                dialog.setTitle("提示");
                dialog.setMessage("请输入正确数值");
                dialog.setCancelable(false);
                dialog.setPositiveButton("OK", null);
                dialog.show();

            }
            }
        });

        btn2.setOnClickListener(new OnClickListener(){//清空
            public void onClick(View v){
                cs.setText("");
                dh.setText("");
                hsds.setText("");
                qsds.setText("");
                gcc.setText("");                
                }
            });

        btn6.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                for(int y=1;y<=num;y++){
                    j+=d[y];
                }
                x=j/num;
                //SharedPreferences pj = getSharedPreferences("data",0);//SharedPreferences记录信息
                //Editor editor=pj.edit();
                //editor.putInt("chs", num);
                //editor.putFloat("pj", (float) x);
            }


        });
        }

}

MyDatabaseHelper

 package com.test.mark4;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class MyDatabaseHelper extends SQLiteOpenHelper{

    public static final String CREATE_F31="creat table f31("
            +"cs text primary key autoincrement,"
            +"chs integer,"
            +"dh text,"
            +"hsds text,"
            +"qsds text,"
            +"gcc text,"
            +"pj real)";

    public MyDatabaseHelper(Context context,String name,CursorFactory factory,int version){
        super(context,name,factory,version);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
        db.execSQL(CREATE_F31);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub

    }


}

  • 写回答

2条回答 默认 最新

  • 代码的灵魂是bug! 2017-05-07 09:40
    关注

    服了,oncreate()方法里面执行这么多代码,就不能将这些代码提取成方法吗

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常
  • ¥15 关于风控系统,如何去选择
  • ¥15 这款软件是什么?需要能满足我的需求
  • ¥15 SpringSecurityOauth2登陆前后request不一致
  • ¥15 禅道二次开发编辑版本,上传不了发行包