2011-10-05 82 views
0

我做了什么:保持图像选择


好家伙, 我有一个GrindView我充满了我的数据库。现在图像显示在那里,可滚动。但是当我点击它时,他们不会保持选择状态。要查看选择了哪张图片,我制作了一个Toastmessage,它向我显示了用onIemClickListner点击的图片。

问:


我想,让点击的图片,选择。所以你点击GridView中的图像上的时间,然后保持选中。 我怎么能意识到这一点?如果有教程或代码示例,我会很高兴看到它的工作原理。

守则


这就是我想,只有实际的形象得到保持与颜色选择,但它不到风度工作的正确方法,有时它只是改变了..

//Hier wird gemerkt welches bild 
     gridview.setOnItemClickListener(new OnItemClickListener() { 

     boolean color = false; 
      View old; 
      View v; 

      public void onItemClick(AdapterView<?> parent, View vv, int position, long id) { 
       Toast.makeText(SFilterConfigActivity.this, "" + position, Toast.LENGTH_SHORT).show(); 

       v = vv; 

       //gridview.setSelection(position); 

       if (color == false){ 
       v.setBackgroundColor(0xFF00FF00); 
       old = v; 
       color = true; 

       } 

       else { 
        old.setBackgroundColor(0x00000000); 
        v.setBackgroundColor(0xFF00FF00); 

        color = false; 

       } 
      } 
     }); 

THX为你提前anwser

野生动物园

回答

1

在调用setAdapter()

做这样的

为setSelection(的setSelected,真)

+0

是的,这不会工作? – 2011-10-05 12:26:15

+0

好吧,它的工作,但我怎么能设置一个背景颜色,当它保持选择...(+1顺便说一句,第一个工作部分,如果与颜色工作给你一个绿色的勾) – safari

+0

你想改变颜色所选图像的? – 2011-10-05 12:29:56

0

以下是工作代码。

  if (color == false){ 
       vv.setBackgroundColor(getResources().getColor(R.color.green)); 
       old = vv; 
       color = true; 
      } else { 
       old.setBackgroundColor(getResources().getColor(R.color.white)); 
       vv.setBackgroundColor(getResources().getColor(R.color.green)); 
       old=vv; 
      }