Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android ListView ImageView實現單選按鈕實例

Android ListView ImageView實現單選按鈕實例

編輯:關於Android編程

做Android開發兩年的時間,技術稍稍有一些提升,剛好把自己實現的功能寫出來,記錄一下,如果能幫助到同行的其他人,我也算是做了件好事,哈哈!!廢話不多說,先上個圖。

先上一段代碼:

1 if (lastposition == position){
2           viewHolder.setImageResource(R.id.iv_yuandian1,R.mipmap.ic_button_checked);
3         } else {
4           viewHolder.setImageResource(R.id.iv_yuandian1,R.mipmap.ic_button_unchecked);
5         }

我先在Adapter中記錄一下默認的位置,因為本人在項目中搭建了一個ListViewAdapter的抽象類,所以每次在使用時只需要直接在Activity中new一下,然後直接在方法裡面設置文本內容或者圖片資源(如上面的代碼的寫法),以後會跟大家分享這個抽象類,當然,這個抽象類還是在高手的指導下完成的,大伙可以忽略我這種寫法,就按照正常的BaseAdapter上面寫就行了。扯遠了,說回主題。其實整個功能的主要部分在ListView的Item點擊事件中,其主要代碼如下:

lv_choosecompany.setOnItemClickListener(new AdapterView.OnItemClickListener() {
      @Override
      public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
        //把當前選中的條目加上選中效果
        old_imageView = (ImageView) view.findViewById(R.id.iv_yuandian1);
        old_imageView.setImageResource(R.mipmap.ic_button_checked);

        new_imageView = (ImageView)view.findViewById(R.id.iv_yuandian1);
        if (lastposition != -1 && lastposition != position){
          //如果已經單擊過條目並且上次保存的item位置和當前位置不同
          new_imageView.setImageResource(R.mipmap.ic_button_unchecked);//把上次選中的樣式去掉
        }
        new_imageView = old_imageView;//把當前的條目保存下來
        lastposition = position;//把當前的位置保存下來

        listViewAdapter.notifyDataSetChanged();

      }

    });

整體流程差不多就是這個樣子,如果想保留選中以後的文本信息,只需要在點擊的時候,將TextView的內容保存下來即可,這裡就不在展示代碼,不足的地方還請同行們多多指教。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved