zoukankan      html  css  js  c++  java
  • 自定义GrildView实现单选功能

    首先看实现功能截图,这是一个自定义Dialog,并且里面内容由GrildView 绑定数据源,实现类似单选功能。

    首先自定义Dialog,绑定数据源

    自定义Dialog弹出框大小方法

    最主要实现的就是点击颜色切换的功能,默认GrildView的每一项都是蓝色背景,当点击时候切换成红色。这里缓存了一个view,每次点击给这个view重新赋值,改变颜色

    数据源Adapter代码:

    public class ZheKouAdapter extends BaseAdapter {
    
      private Context context;
      private List<ZheKouMuBan> ZheKouList;
      protected LayoutInflater mLayoutInflater;
    
      public ZheKouAdapter(Context context, List<ZheKouMuBan> ZheKouList) {
        this.context = context;
        this.ZheKouList = ZheKouList;
        mLayoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      }
    
      @Override
      public int getCount() {
        // TODO Auto-generated method stub
        return ZheKouList.size();
      }
    
      @Override
      public Object getItem(int position) {
        // TODO Auto-generated method stub
        return ZheKouList.get(position);
      }
    
      @Override
      public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
      }
    
      @Override
      public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        View view = convertView;
        if (view == null) {
          view = mLayoutInflater.inflate(R.layout.mul_desk_select, null);
          TextView txtname = (TextView)view.findViewById(R.id.mul_deskname);
          ZheKouMuBan zkmb = ZheKouList.get(position);
          txtname.setText(zkmb.ZKMB_Name);
          txtname.setTextColor(Color.WHITE);
          txtname.setGravity(Gravity.CENTER);
        }
        return view;
      }
    }
  • 相关阅读:
    九个令人兴奋的新功能将与Java 9 展示两点
    自学前端开发 新版css时钟效果图
    自学前端,你要的学习资料到了~~~~~~
    Angularjs中ng-repeat与移动端滑动插件iScroll的冲突
    计蒜客学习记录
    明明的随机数
    模板题
    泉州一中复赛模拟
    快速幂模板
    NOIP2013
  • 原文地址:https://www.cnblogs.com/LIANQQ/p/4098330.html
Copyright © 2011-2022 走看看