.class public Lcom/moji/multiselector/adapter/ImageGridAdapter; .super Landroid/widget/BaseAdapter; .source "ImageGridAdapter.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener;, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder; } .end annotation # instance fields .field private a:Landroid/app/Activity; .field private b:I .field private c:I .field private d:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;" } .end annotation .end field .field private e:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;" } .end annotation .end field .field private f:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;" } .end annotation .end field .field private g:Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener; # direct methods .method public constructor (Landroid/app/Activity;Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener;)V .locals 1 .line 39 invoke-direct {p0}, Landroid/widget/BaseAdapter;->()V .line 35 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->d:Ljava/util/ArrayList; .line 36 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; .line 37 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; .line 40 iput-object p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a:Landroid/app/Activity; .line 41 iput-object p2, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->g:Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener; .line 42 invoke-static {}, Lcom/moji/tool/DeviceTool;->b()I move-result p1 const/high16 p2, 0x41a00000 # 20.0f invoke-static {p2}, Lcom/moji/tool/DeviceTool;->a(F)I move-result p2 sub-int/2addr p1, p2 div-int/lit8 p1, p1, 0x3 iput p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->c:I return-void .end method .method static synthetic a(Lcom/moji/multiselector/adapter/ImageGridAdapter;Ljava/util/ArrayList;)I .locals 0 .line 30 invoke-direct {p0, p1}, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a(Ljava/util/ArrayList;)I move-result p0 return p0 .end method .method private a(Ljava/util/ArrayList;)I .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;)I" } .end annotation .line 186 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->d:Ljava/util/ArrayList; const/4 v1, 0x0 if-eqz v0, :cond_3 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->d:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v2, 0x1 if-ge v0, v2, :cond_0 goto :goto_1 .line 190 :cond_0 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->d:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; move-result-object v0 :cond_1 :goto_0 invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_2 invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Lcom/moji/multiselector/bean/ImageItem; .line 191 iget-boolean v3, v2, Lcom/moji/multiselector/bean/ImageItem;->selected:Z if-eqz v3, :cond_1 invoke-virtual {p1, v2}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_2 return v1 :cond_3 :goto_1 return v1 .end method .method static synthetic a(Lcom/moji/multiselector/adapter/ImageGridAdapter;)Ljava/util/ArrayList; .locals 0 .line 30 iget-object p0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; return-object p0 .end method .method static synthetic a(Lcom/moji/multiselector/adapter/ImageGridAdapter;Ljava/util/ArrayList;I)Ljava/util/ArrayList; .locals 0 .line 30 invoke-direct {p0, p1, p2}, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a(Ljava/util/ArrayList;I)Ljava/util/ArrayList; move-result-object p0 return-object p0 .end method .method private a(Ljava/util/ArrayList;I)Ljava/util/ArrayList; .locals 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;I)", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;" } .end annotation if-eqz p1, :cond_5 .line 165 invoke-virtual {p1}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v1, 0x1 if-ge v0, v1, :cond_0 goto :goto_2 .line 168 :cond_0 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 169 invoke-virtual {p1}, Ljava/util/ArrayList;->size()I move-result v1 const/16 v2, 0xa const/16 v3, 0xa :goto_0 if-lez v3, :cond_2 sub-int v4, p2, v3 if-ltz v4, :cond_1 if-ge v4, v1, :cond_1 .line 173 invoke-virtual {p1, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v4 invoke-virtual {v0, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z :cond_1 add-int/lit8 v3, v3, -0x1 goto :goto_0 :cond_2 const/4 v3, 0x0 :goto_1 if-gt v3, v2, :cond_4 add-int v4, p2, v3 if-ltz v4, :cond_3 if-ge v4, v1, :cond_3 .line 179 invoke-virtual {p1, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v4 invoke-virtual {v0, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z :cond_3 add-int/lit8 v3, v3, 0x1 goto :goto_1 :cond_4 return-object v0 :cond_5 :goto_2 const/4 p1, 0x0 return-object p1 .end method .method static synthetic b(Lcom/moji/multiselector/adapter/ImageGridAdapter;)Landroid/app/Activity; .locals 0 .line 30 iget-object p0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a:Landroid/app/Activity; return-object p0 .end method .method static synthetic c(Lcom/moji/multiselector/adapter/ImageGridAdapter;)I .locals 0 .line 30 iget p0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->b:I return p0 .end method .method static synthetic d(Lcom/moji/multiselector/adapter/ImageGridAdapter;)Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener; .locals 0 .line 30 iget-object p0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->g:Lcom/moji/multiselector/adapter/ImageGridAdapter$OnSelectedImageListener; return-object p0 .end method # virtual methods .method public a(I)V .locals 0 .line 53 iput p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->b:I return-void .end method .method public a(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/util/ArrayList;)V .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;", "Ljava/util/ArrayList<", "Lcom/moji/multiselector/bean/ImageItem;", ">;)V" } .end annotation .line 46 iput-object p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->d:Ljava/util/ArrayList; .line 47 iput-object p2, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; .line 48 iput-object p3, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; .line 49 invoke-virtual {p0}, Lcom/moji/multiselector/adapter/ImageGridAdapter;->notifyDataSetChanged()V return-void .end method .method public b(I)Lcom/moji/multiselector/bean/ImageItem; .locals 1 .line 66 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object p1 check-cast p1, Lcom/moji/multiselector/bean/ImageItem; return-object p1 .end method .method public getCount()I .locals 1 .line 58 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; if-nez v0, :cond_0 const/4 v0, 0x0 return v0 .line 61 :cond_0 iget-object v0, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->e:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 return v0 .end method .method public synthetic getItem(I)Ljava/lang/Object; .locals 0 .line 30 invoke-virtual {p0, p1}, Lcom/moji/multiselector/adapter/ImageGridAdapter;->b(I)Lcom/moji/multiselector/bean/ImageItem; move-result-object p1 return-object p1 .end method .method public getItemId(I)J .locals 2 int-to-long v0, p1 return-wide v0 .end method .method public getView(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View; .locals 5 .line 76 invoke-virtual {p0, p1}, Lcom/moji/multiselector/adapter/ImageGridAdapter;->b(I)Lcom/moji/multiselector/bean/ImageItem; move-result-object v0 const/4 v1, 0x0 if-nez p2, :cond_0 .line 79 iget-object p2, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a:Landroid/app/Activity; invoke-static {p2}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater; move-result-object p2 sget v2, Lcom/moji/camera/R$layout;->adapter_image_list_item:I invoke-virtual {p2, v2, p3, v1}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View; move-result-object p2 .line 80 new-instance p3, Landroid/widget/AbsListView$LayoutParams; const/4 v2, -0x1 iget v3, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->c:I invoke-direct {p3, v2, v3}, Landroid/widget/AbsListView$LayoutParams;->(II)V invoke-virtual {p2, p3}, Landroid/view/View;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V .line 81 new-instance p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder; invoke-direct {p3, p0}, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->(Lcom/moji/multiselector/adapter/ImageGridAdapter;)V .line 82 sget v2, Lcom/moji/camera/R$id;->iv_imageview:I invoke-virtual {p2, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v2 check-cast v2, Landroid/widget/ImageView; iput-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->a:Landroid/widget/ImageView; .line 83 sget v2, Lcom/moji/camera/R$id;->shade:I invoke-virtual {p2, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v2 iput-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->b:Landroid/view/View; .line 84 sget v2, Lcom/moji/camera/R$id;->cb_check:I invoke-virtual {p2, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v2 check-cast v2, Landroid/widget/CheckBox; iput-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; .line 85 invoke-virtual {p2, p3}, Landroid/view/View;->setTag(Ljava/lang/Object;)V goto :goto_0 .line 87 :cond_0 invoke-virtual {p2}, Landroid/view/View;->getTag()Ljava/lang/Object; move-result-object p3 check-cast p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder; .line 89 :goto_0 iget-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->a:Landroid/widget/ImageView; invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object p1 invoke-virtual {v2, p1}, Landroid/widget/ImageView;->setTag(Ljava/lang/Object;)V .line 90 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->a:Landroid/widget/ImageView; new-instance v2, Lcom/moji/multiselector/adapter/ImageGridAdapter$1; invoke-direct {v2, p0}, Lcom/moji/multiselector/adapter/ImageGridAdapter$1;->(Lcom/moji/multiselector/adapter/ImageGridAdapter;)V invoke-virtual {p1, v2}, Landroid/widget/ImageView;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 109 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; invoke-virtual {p1, v0}, Landroid/widget/CheckBox;->setTag(Ljava/lang/Object;)V .line 110 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; new-instance v2, Lcom/moji/multiselector/adapter/ImageGridAdapter$2; invoke-direct {v2, p0}, Lcom/moji/multiselector/adapter/ImageGridAdapter$2;->(Lcom/moji/multiselector/adapter/ImageGridAdapter;)V invoke-virtual {p1, v2}, Landroid/widget/CheckBox;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V .line 137 iget-object p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->a:Landroid/app/Activity; invoke-static {p1}, Lcom/squareup/picasso/Picasso;->a(Landroid/content/Context;)Lcom/squareup/picasso/Picasso; move-result-object p1 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "file://" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget-object v3, v0, Lcom/moji/multiselector/bean/ImageItem;->path:Ljava/lang/String; invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 .line 138 invoke-virtual {p1, v2}, Lcom/squareup/picasso/Picasso;->a(Ljava/lang/String;)Lcom/squareup/picasso/RequestCreator; move-result-object p1 sget-object v2, Landroid/graphics/Bitmap$Config;->RGB_565:Landroid/graphics/Bitmap$Config; .line 139 invoke-virtual {p1, v2}, Lcom/squareup/picasso/RequestCreator;->a(Landroid/graphics/Bitmap$Config;)Lcom/squareup/picasso/RequestCreator; move-result-object p1 .line 140 invoke-virtual {p1}, Lcom/squareup/picasso/RequestCreator;->f()Lcom/squareup/picasso/RequestCreator; move-result-object p1 .line 141 invoke-virtual {p1}, Lcom/squareup/picasso/RequestCreator;->b()Lcom/squareup/picasso/RequestCreator; move-result-object p1 .line 142 iget v2, v0, Lcom/moji/multiselector/bean/ImageItem;->isCamera:I const/4 v3, 0x1 if-ne v2, v3, :cond_1 .line 143 sget-object v2, Lcom/squareup/picasso/MemoryPolicy;->NO_CACHE:Lcom/squareup/picasso/MemoryPolicy; new-array v3, v3, [Lcom/squareup/picasso/MemoryPolicy; sget-object v4, Lcom/squareup/picasso/MemoryPolicy;->NO_STORE:Lcom/squareup/picasso/MemoryPolicy; aput-object v4, v3, v1 invoke-virtual {p1, v2, v3}, Lcom/squareup/picasso/RequestCreator;->a(Lcom/squareup/picasso/MemoryPolicy;[Lcom/squareup/picasso/MemoryPolicy;)Lcom/squareup/picasso/RequestCreator; move-result-object p1 iget-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->a:Landroid/widget/ImageView; invoke-virtual {p1, v2}, Lcom/squareup/picasso/RequestCreator;->a(Landroid/widget/ImageView;)V goto :goto_1 .line 145 :cond_1 iget-object v2, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->a:Landroid/widget/ImageView; invoke-virtual {p1, v2}, Lcom/squareup/picasso/RequestCreator;->a(Landroid/widget/ImageView;)V .line 147 :goto_1 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; iget-boolean v2, v0, Lcom/moji/multiselector/bean/ImageItem;->selected:Z invoke-virtual {p1, v2}, Landroid/widget/CheckBox;->setChecked(Z)V .line 148 iget-object p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; const/16 v2, 0x8 if-eqz p1, :cond_4 iget-object p1, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; invoke-virtual {p1}, Ljava/util/ArrayList;->size()I move-result p1 iget v3, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->b:I if-ne p1, v3, :cond_4 .line 149 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; iget-object v3, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; invoke-virtual {v3, v0}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v3 if-eqz v3, :cond_2 const/4 v3, 0x0 goto :goto_2 :cond_2 const/16 v3, 0x8 :goto_2 invoke-virtual {p1, v3}, Landroid/widget/CheckBox;->setVisibility(I)V .line 150 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->b:Landroid/view/View; iget-object p3, p0, Lcom/moji/multiselector/adapter/ImageGridAdapter;->f:Ljava/util/ArrayList; invoke-virtual {p3, v0}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result p3 if-eqz p3, :cond_3 const/16 v1, 0x8 :cond_3 invoke-virtual {p1, v1}, Landroid/view/View;->setVisibility(I)V goto :goto_3 .line 152 :cond_4 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->c:Landroid/widget/CheckBox; invoke-virtual {p1, v1}, Landroid/widget/CheckBox;->setVisibility(I)V .line 153 iget-object p1, p3, Lcom/moji/multiselector/adapter/ImageGridAdapter$ViewHolder;->b:Landroid/view/View; invoke-virtual {p1, v2}, Landroid/view/View;->setVisibility(I)V :goto_3 return-object p2 .end method