为了账号安全,请及时绑定邮箱和手机立即绑定

程序中添加简单的排序

标签:
Android

在程序中排序有两种:

1.最简单的前端写请求服务器;服务器做出相应的处理。
2.直接在前端自己写代码进行排序(这类排序比较复杂,我也不会写,从来也没有做过这方面的)
我就简单的介绍下手机端的逻辑代码(最好让服务器给你排序,一般的排序都是ListView居多,listview使用的又是异步加载)

下面写的代码:
我用的是pm10和pm2.5的排序(其实和商城中的价格、销量是同理的)
用三张图来清晰的介绍排序问题

5bab76d80001d18c10801920.jpg

5bab76d90001a87010801920.jpg

5bab76da00012e2910801920.jpg

这三张图就是排序的内容,下面简单的讲解下:

1.看到图中的小圆点你会认为它是RadioButton,其实则不是,他是选择的时候变换的图片,相当于上下箭头(也可以写成状态选择器,都是同理)

2.现在我是给ImageView做监听(判断是否选)中;红色就是上面的小圆点,大家误认为的RadioButton的两个图片,其他监听同上

private boolean isVisible = true;
private boolean isVisiblepm25 = true;
managerPm10.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {

        if (isVisible) {
            isVisible = false;
            managerPm10.setBackgroundResource(R.drawable.selected_manager);
            adapter.notifyDataSetChanged();//刷新页面
            Toast.makeText(getActivity(), "pm10的正序排列", Toast.LENGTH_SHORT).show();
            managerPm25.setBackgroundResource(R.drawable.unselected_manager);
            isVisiblepm25 = true;
            //请求服务器

        }else {
            isVisible = true;

            managerPm10.setBackgroundResource(R.drawable.unselected_manager);
            Toast.makeText(getActivity(), "pm10回归原来的数据", Toast.LENGTH_SHORT).show();
        }

    }
});

managerPm25.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        if (isVisiblepm25) {
            isVisiblepm25 = false;
            managerPm25.setBackgroundResource(R.drawable.selected_manager);
            adapter.notifyDataSetChanged();//刷新页面
            Toast.makeText(getActivity(), "pm2.5的正序排列", Toast.LENGTH_SHORT).show();
            managerPm10.setBackgroundResource(R.drawable.unselected_manager);//当点击pm25的排序的时候,取消pm10的点击
            isVisible = true;
        }else {
            isVisiblepm25 = true;

            managerPm25.setBackgroundResource(R.drawable.unselected_manager);
            Toast.makeText(getActivity(), "pm2.5回归原来的数据", Toast.LENGTH_SHORT).show();
        }

    }
});

3.有人会问为啥使用两个状态判断,我的需求是当点击pm2.5时,不再显示pm10的选中,点击pm10同理
4.请求网络的时候在四个选择中写请求网络即可,注意:一般请求网络服务器会给你唯一标识,主要是为了让它知道你请求的是什么,是拍正序还是倒序而已!

原文链接:http://www.apkbus.com/blog-784586-62678.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消