最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android仿微信圖片上傳帶加號且超過最大數(shù)隱藏功能

 更新時間:2018年03月23日 16:33:25   投稿:mrr  
這篇文章給大家分享android仿照微信空間上傳圖片,顯示圖片數(shù)量以及超過最大,上傳按鈕隱藏功能,非常不錯,具有參考借鑒價值,需要的朋友參考下吧

1、仿照微信空間上傳圖片,顯示圖片數(shù)量以及超過最大,上傳按鈕隱藏功能

2、上效果圖

3、上代碼,主要是Adapter類

/**
 * Created by zhangyinlei on 2018/3/2 0002.
 */
public class AlbumSelectedShowAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
  private static int TYPE_ADD = 0;//添加圖片
  private static int TYPE_COMMON = 1;//普通圖片展示
  private Context context;
  private LayoutInflater mLayoutInflater;
  //data
  private int mMaxAlbum;//最大選擇圖片的數(shù)量
  private List<String> mStringList;//圖片url集合
  public AlbumSelectedShowAdapter(Context context, List<String> mStringList, int maxAlbum) {
    this.context = context;
    this.mStringList = mStringList;
    this.mMaxAlbum = maxAlbum;
    this.mLayoutInflater = LayoutInflater.from(context);
  }
  @Override
  public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    if (viewType == TYPE_ADD) {
      return new ItemViewHolderAdd(mLayoutInflater.inflate(R.layout.item_album_selected_add, parent, false));
    } else {
      return new ItemViewHolderCommon(mLayoutInflater.inflate(R.layout.item_album_selected_common, parent, false));
    }
  }
  @Override
  public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
    View itemView = null;
    if (holder instanceof ItemViewHolderAdd) {
      ItemViewHolderAdd itemViewHolderAdd = (ItemViewHolderAdd) holder;
      if (position >= mMaxAlbum) {
        itemViewHolderAdd.itemView.setVisibility(View.GONE);
      } else {
        itemViewHolderAdd.tvNum.setText(position + "/" + mMaxAlbum);
        itemViewHolderAdd.itemView.setVisibility(View.VISIBLE);
        itemView = ((ItemViewHolderAdd) holder).itemView;
      }
    } else if (holder instanceof ItemViewHolderCommon) {
      String url = mStringList.get(position);
      Glide.with(context).load(url).apply(RequestOptions.centerCropTransform()).transition(withCrossFade()).into(((ItemViewHolderCommon) holder).ivCommon);
      itemView = ((ItemViewHolderCommon) holder).itemView;
    }
    if (mOnItemClickListener != null && null != itemView) {
      itemView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
          int position = holder.getLayoutPosition();
          mOnItemClickListener.onItemClick(holder.itemView, position);
        }
      });
    }
  }
  @Override
  public int getItemViewType(int position) {
    return position == mStringList.size() ? TYPE_ADD : TYPE_COMMON;
  }
  @Override
  public int getItemCount() {
    return mStringList.size() + 1;//加一代表最后一個添加圖片按鈕
  }
  public static class ItemViewHolderAdd extends RecyclerView.ViewHolder {
    private TextView tvNum;
    public ItemViewHolderAdd(View itemView) {
      super(itemView);
      tvNum = itemView.findViewById(R.id.tv_album_selected_num);
    }
  }
  public static class ItemViewHolderCommon extends RecyclerView.ViewHolder {
    private ImageView ivCommon;
    public ItemViewHolderCommon(View itemView) {
      super(itemView);
      ivCommon = itemView.findViewById(R.id.iv_album_selected);
    }
  }
  private OnItemClickListener mOnItemClickListener;
  public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
    mOnItemClickListener = onItemClickListener;
  }
  public interface OnItemClickListener {
    void onItemClick(View view, int position);
  }
}

在Activity中使用,recycleView

mStringList = new ArrayList<>();
    mAlbumSelectedShowAdapter = new AlbumSelectedShowAdapter(this, mStringList, mMaxAlbum);
    mRvAlbumSelected.setLayoutManager(new GridLayoutManager(this, 4));
    mRvAlbumSelected.setHasFixedSize(true);
    mRvAlbumSelected.setAdapter(mAlbumSelectedShowAdapter);
    mAlbumSelectedShowAdapter.setOnItemClickListener(new AlbumSelectedShowAdapter.OnItemClickListener() {
      @Override
      public void onItemClick(View view, int position) {
        if (mStringList.size() == position) {
        //選擇相冊功能
          AlbumUtils.choosePicture(SuggestionActivity.this, false, mMaxAlbum - mStringList.size(), true);
        } else {
          //圖片展示界面
        }
      }
    });
  }

總結

以上所述是小編給大家介紹的Android仿微信圖片上傳帶加號且超過最大數(shù)隱藏功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • Android App中讀取XML與JSON格式數(shù)據(jù)的基本方法示例

    Android App中讀取XML與JSON格式數(shù)據(jù)的基本方法示例

    這篇文章主要介紹了Android App中讀取XML與JSON格式數(shù)據(jù)的基本方法示例,Android中自帶的JSONObject非常好用,需要的朋友可以參考下
    2016-03-03
  • Android編程中避免內(nèi)存泄露的方法總結

    Android編程中避免內(nèi)存泄露的方法總結

    這篇文章主要介紹了Android編程中避免內(nèi)存泄露的方法總結,本文講解了最可能造成內(nèi)存泄露的幾個點,并總結出如何應對這些內(nèi)存泄露,需要的朋友可以參考下
    2014-08-08
  • Android Kotlin Flow 冷熱流詳解

    Android Kotlin Flow 冷熱流詳解

    在Android開發(fā)中,Flow是Kotlin協(xié)程庫的重要組成部分,用于處理異步數(shù)據(jù)流,它能夠異步生產(chǎn)多個值,類似于RxJava中的Observable,本文介紹Android Kotlin Flow 冷熱流,感興趣的朋友一起看看吧
    2024-11-11
  • Android Studio 下載視頻到本地

    Android Studio 下載視頻到本地

    這篇文章主要介紹了Android Studio 下載視頻到本地,利用GreenDao實現(xiàn)多線程斷點續(xù)傳,這樣的話,下次用戶再次下載時,將繼續(xù)上次數(shù)據(jù)庫的接著下載,這樣用戶體驗就會很好,也大大節(jié)省了成本.具體實現(xiàn)代碼大家參考下本文
    2018-03-03
  • Java ArrayList源碼深入分析

    Java ArrayList源碼深入分析

    ArrayList 類是一個可以動態(tài)修改的數(shù)組,與普通數(shù)組的區(qū)別就是它是沒有固定大小的限制,我們可以添加或刪除元素。ArrayList 繼承了 AbstractList,并實現(xiàn)了List接口
    2022-08-08
  • Android應用中通過Layout_weight屬性用ListView實現(xiàn)表格

    Android應用中通過Layout_weight屬性用ListView實現(xiàn)表格

    這篇文章主要介紹了Android應用中通過Layout_weight屬性用ListView實現(xiàn)表格的方法,文中對Layout_weight屬性先有一個較為詳細的解釋,需要的朋友可以參考下
    2016-04-04
  • Android CameraManager類詳解

    Android CameraManager類詳解

    這篇文章主要為大家詳細介紹了Android CameraManager類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • android studio 打包自動生成版本號與日期,apk輸入路徑詳解

    android studio 打包自動生成版本號與日期,apk輸入路徑詳解

    這篇文章主要介紹了android studio 打包自動生成版本號與日期,apk輸入路徑詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Android開發(fā)仿映客送禮物效果

    Android開發(fā)仿映客送禮物效果

    這篇文章主要介紹了Android開發(fā)仿映客送禮物效果的實現(xiàn)代碼,本文介紹的非常詳細,具有參考借鑒價值,感興趣的朋友一起學習吧
    2016-09-09
  • Android AutoCompleteTextView控件使用實例

    Android AutoCompleteTextView控件使用實例

    AutoCompleteTextView這個控件用于輸入框的自動完成提示,非常適合搜索框等。它本質上是個EditText,實際上它也是從EditText繼承的,使用起來也十分簡單
    2014-04-04

最新評論

绵阳市| 菏泽市| 黄陵县| 南皮县| 黄浦区| 武功县| 河间市| 泽普县| 乌兰察布市| 来安县| 额敏县| 论坛| 朝阳市| 青阳县| 包头市| 理塘县| 城固县| 昌平区| 读书| 五大连池市| 丁青县| 剑阁县| 两当县| 邵武市| 郎溪县| 论坛| 平远县| 青冈县| 平罗县| 札达县| 梅州市| 连云港市| 深水埗区| 东兰县| 西丰县| 黔江区| 松溪县| 宁陕县| 通榆县| 营山县| 环江|