美文网首页
《小曼的账本》开发记录 【4.其他功能(账本/搜索)】

《小曼的账本》开发记录 【4.其他功能(账本/搜索)】

作者: 做梦枯岛醒 | 来源:发表于2018-04-19 20:38 被阅读70次

算账买糖糖。
跟“BOSS”讨论了一下需要展示多少数据和怎么展示数据。
发现工作量还挺大,于是埋头苦敲代码去了。

2018年4月16日 20点17分

《小曼的账本》开发记录 【4.其他功能(账本/搜索)】

跟Boss商量了一下,最后决定UI这么设计,因为还要考研复习,所以没在UI上花费大时间。

这里我不想提太多,因为就是一个查询数据库求和统计的过程,都是一些语句,具体的大家可以参考我最后放的Github链接源码。

2018年4月19日 20点14分

马上要交差了。
在首页增加了一个按照订单号搜索订单的功能。

 //配置toolbar
        toolbar.inflateMenu(R.menu.search);
        MenuItem item = toolbar.getMenu().findItem(R.id.search_view);
        mSearchView = (SearchView)MenuItemCompat.getActionView(item);
        mSearchView.setMaxWidth(600);
        mSearchView.setQueryHint("输入订单号");
        mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
                    @Override
                    public boolean onQueryTextSubmit(String newText) {
                        if(newText == null || newText.equals("")){
                            return false;
                        }
                        //查找订单
                        final List<Orders> orders= DataSupport.where("orderNumber = ?", newText).find(Orders.class);

                        if(orders.size() <= 0){
                            getActivity().runOnUiThread(new Runnable() {
                                @Override
                                public void run() {
                                    Snackbar.make(add,"没有匹配订单",Snackbar.LENGTH_SHORT).show();
                                }
                            });
                            return false;
                        }
                        OrdersInDB = orders.get(0);
                        getActivity().runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                for(int i = 0; i < data.size(); i++){
                                    if(OrdersInDB.getId() != data.get(i).getId()){
                                        recycleview.smoothScrollToPosition(i+1);
                                    }else{
                                        Snackbar.make(add,data.get(i).getCommodity(),Snackbar.LENGTH_LONG).show();
                                        break;
                                    }
                                }
                            }
                        });

                        mSearchView.clearFocus();
                        return false;
                    }

                    @Override
                    public boolean onQueryTextChange(String newText) {
                        return false;
                    }
                });

贴一下menu的源代码

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
   <item android:id="@+id/search_view"
       android:title="搜索"
       app:actionViewClass="android.support.v7.widget.SearchView"
       app:showAsAction="always"
       />
</menu>

这里相对容易理解,在后面的文章我会专门写一下Toolbar的一些技巧和SearchView的使用。

2018年4月19日20点19分

考虑到小可爱有夜间使用的情况,所以为她加个夜间模式,具体的代码也不贴了,在后续的文章中会有夜间模式的实现。

2018年4月19日20点28分

小可爱还需要一个云同步的功能,暂时搞不出高大上的东西,先做一个简陋点的吧。
每次有数据增删改,都会发送到服务器,当数据丢失或者换手机的时候,点击同步按钮就可以把数据拉下来。
而且目前只有小可爱一个用户,那么就省去注册的过程,直接登录。
暂时是这么想的。

2018年4月24日21点09分

终于构建,打包,把奋斗几天的成果送给小可爱了,然后小可爱反馈了一些问题给我,然后我需要修改一下。
过几天我会把源码整理好上传到Github,很希望用技术帮周围的人提供方便。

//使用代码使人变聪明,使用程序使人变懒。哈哈哈哈。
//下个app继续奋斗。

相关文章

网友评论

      本文标题:《小曼的账本》开发记录 【4.其他功能(账本/搜索)】

      本文链接:https://www.haomeiwen.com/subject/mdxykftx.html