2012-12-10 24 views
0

我有一個ListView和適配器:ListView和disapear推動作用

resultAdapter = new SimpleCursorAdapter(getActivity(), 
       R.layout.custom_products_list, null, new String[] { 

       StoreData.Product.NAME, 
         StoreData.Product.PRICE, 
         StoreData.BrandRecord.NAME3 }, new int[] { 
         R.id.productItem, R.id.productPItem, 
         R.id.productBItem }, 0){ 

          @Override 
          public View getView(int position, View convertView, 
            ViewGroup parent) { 
           View viewGroup=super.getView(position, convertView, parent); 
            if (position % 2 == 0) 
             viewGroup.setBackgroundResource(color.even_row_color); 
            else 
             viewGroup.setBackgroundResource(android.R.color.background_light); 
           //viewGroup.setClickable(true); 
            return viewGroup; 
          } 

     }; 

這是爲了使兩種顏色列表。一切正常,我有兩種顏色的物品清單。但是當我點擊列表中的任何項目推送效果disapear。當我點擊我想改變他的顏色的項目時,我想看到像基本列表視圖中的效果。我該怎麼做?

+0

使用選擇作爲您的意見,而不是(最有可能)一個普通的彩色背景。 – Luksprog

+0

我該怎麼做? – user1302569

+0

http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList – Luksprog

回答

1

儘量讓你改變convertView並返回它:

@Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     if (convertView == null) { 
      LayoutInflater li = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      convertView=li.inflate(R.layout.custom_products_list, null); 
      } 
        if (position % 2 == 0) 
            convertView.setBackgroundResource(color.even_row_color); 
           else 
            convertView.setBackgroundResource(android.R.color.background_light); 
     return convertView; 
    }