duye

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

android studio

目前主要在同学录的作业里派上了用场,往后的团队项目中也可以提供一定的火力支持。

同学录:一个简单的增删改查的APP。

需要解决的前置问题:

  • as安装,sdk、jdk、gredle的下载及路径。

以下为代码部分

在西瓜学长的博客里学到了如何操作数据库以及增删改查功能

// 获取SQLiteDatabase以操作SQL语句
        DB = SQLiteDatabase.openOrCreateDatabase(getFilesDir() + "/info.db",
                null);
//按下添加按钮后对数据库进行操作
Button addBtn=(Button)findViewById(R.id.addButton);
        addBtn.setOnClickListener(new View.OnClickListener() {
                                      public void onClick(View v) {
                                          dataSave();
                                      }
                                  }
        );

以及包括####// 自定义界面文本输入框(修改界面),捕获异常的 try catch 用于处理可能遇到的bug。

经过几次讨论后决定把修改、删除写到查寻里面,考虑到正常情况下,一般会在查询后进行这两个操作。

删除操作,长按:setOnItemLongClickListener

values.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {

            @Override
            public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                                           int arg2, long arg3) {
                // 获取所点击项的_id
                TextView tv = (TextView) arg1.findViewById(R.id.idView);
                final String id = tv.getText().toString();
                // 通过Dialog提示是否删除
                AlertDialog.Builder builder = new AlertDialog.Builder(
                        SelectActivity.this);
                builder.setMessage("确定要删除吗?");
                // 确定按钮点击事件
                builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        delete(id);
                        replaceList(selectAll());// 删除后刷新列表
                    }
                });
                // 取消按钮点击事件
                builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        dialog.dismiss();
                    }
                });
                builder.create().show();

                return true;
            }
        });

修改操作,短按:setOnItemClickListener

values.setOnItemClickListener(new AdapterView.OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                                    long arg3) {
                // 获取_id,username,password项
                TextView tvId = (TextView) arg1.findViewById(R.id.idView);

                final String id = tvId.getText().toString();

                // 通过Dialog弹出修改界面
                AlertDialog.Builder builder = new AlertDialog.Builder(SelectActivity.this);
                builder.setTitle("修改");

                // 自定义界面包括七个文本输入框
                View v = View.inflate(SelectActivity.this, R.layout.alertdialog,
                        null);
                final EditText etName = (EditText) v
                        .findViewById(R.id.alter_name);
                final EditText etAdd = (EditText) v
                        .findViewById(R.id.alter_address);
                final EditText etPhone = (EditText) v
                        .findViewById(R.id.alter_phonenumber);
                final EditText etWechat = (EditText) v
                        .findViewById(R.id.alter_wechat);
                final EditText etMailbox = (EditText) v
                        .findViewById(R.id.alter_mailbox);
                final EditText etQQ = (EditText) v
                        .findViewById(R.id.alter_qqnumber);
                final EditText etPerDes = (EditText) v
                        .findViewById(R.id.alter_personaldescription);

心得体会

  • 第一次使用as,感觉什么都是新的,还好懂一点java,作业完成以后感觉学到了不少东西,又感觉还有很多细节似懂非懂。
  • 整个作业不是独自完成的,,因此完成之后会再重新梳理一下,有助于我理解整个作业的代码。
  • 如果这个是个人作业,那么现在我能独立完成吗?所以我就又尝试着自己敲敲代码,果然遇到不少问题,同时这些有的也是我一直不理解的地方。
  • 感觉在α阶段自己起跑慢了,速度也没提起来,要多找找自己的原因,静下心来,好好研究代码,早睡早起,就从这个小长假开始,oye。
posted on 2017-11-16 21:36  duye  阅读(257)  评论(2编辑  收藏  举报