android 级联菜单

android listview级联三菜单选择地区,本地数据库sqlite级联地区,item选中不变色

 

适配器  核心代码如下:

public  class  ListAdapter  extends  BaseAdapter {
     private  Context context;
     private  List<item> myList;
     private  LayoutInflater mInflater;
     private  int  selectedPosition = - 1 ; // 选中的位置
     public  ListAdapter(Context context, List<item> myList, int  selected) {
         this .context = context;
         this .myList = myList;
         this .mInflater = LayoutInflater.from( this .context);
         selectedPosition=selected;
     }
 
     public  int  getCount() {
         return  myList.size();
     }
 
     public  Object getItem( int  position) {
         return  myList.get(position);
     }
 
     public  long  getItemId( int  position) {
         return  position;
     }
     public  void  setSelectedPosition( int  position) {
         selectedPosition = position;
     }
 
     public  View getView( final  int  position,  View convertView,  final  ViewGroup parent) {
         
          ViewHolder holder =  null ;
         if  (convertView ==  null ) {
             holder =  new  ViewHolder();
             convertView = mInflater.inflate(R.layout.block_list_item,  null );
 
             convertView.setTag(holder);
         else  {
             holder = (ViewHolder) convertView.getTag();
         }
         final  View cView=convertView;
         final  ViewHolder cHolder=holder;
         holder.iLayout=(LinearLayout) convertView.findViewById(R.id.ll_root);
         holder.name = (TextView) convertView.findViewById(R.id.tv_name);
         holder.img = (ImageView) convertView.findViewById(R.id.iv_right);
         holder.name.setText(myList.get(position).getName());
         System.out.println(Item值为:+selectedPosition);
         System.out.println(自带的为:+position);
         if  (selectedPosition == position) {
             holder.iLayout.setSelected( true );
             holder.iLayout.setPressed( true );
             holder.iLayout.setBackgroundColor(Color.RED);
         else  {
             holder.iLayout.setSelected( false );
             holder.iLayout.setPressed( false );
             holder.iLayout.setBackgroundColor(Color.TRANSPARENT);  
 
         }
 
         return  convertView;
     }
     
     class  ButtonView {
         int  layoutViewId;
 
         ButtonView( int  tId) {
             layoutViewId = tId;
         }
     }
      
 
     public  final  class  ViewHolder {
         public  TextView name;
         public  ImageView img;
         public  LinearLayout iLayout;
     }
 
}
 
参考:http://www.2cto.com/kf/201407/321095.html
 
                                
 


 

转载于:https://www.cnblogs.com/feng666/p/4363849.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值