1- package com .uis .stackview .demo .activity ;
1+ package com .uis .stackviewlayout .demo .activity ;
22
33import android .content .Context ;
4+ import android .util .Log ;
45import android .view .LayoutInflater ;
56import android .view .View ;
67import android .view .ViewGroup ;
78import android .widget .ImageView ;
89import com .bumptech .glide .Glide ;
9- import com .uis .stackview .demo .R ;
10- import com .uis .stackview .demo .entity .ItemEntity ;
1110import com .uis .stackview .StackLayout ;
11+ import com .uis .stackview .demo .R ;
12+ import com .uis .stackviewlayout .demo .entity .ItemEntity ;
13+ import com .uis .stackviewlayout .StackViewLayout ;
1214import org .json .JSONArray ;
1315import org .json .JSONObject ;
1416import java .io .InputStream ;
@@ -72,9 +74,9 @@ public static ArrayList<ItemEntity> initDataList(Context context) {
7274 }
7375
7476 static class StackVH extends RecyclerView .ViewHolder {
75- StackLayout stackLayout ;
77+ StackViewLayout stackLayout ;
7678 List <ItemEntity > stackData = new ArrayList <>();
77- StackLayout . StackAdapter adapter = new StackLayout . StackAdapter () {
79+ StackViewLayout . StackViewAdapter adapter = new StackViewLayout . StackViewAdapter () {
7880
7981 @ Override
8082 public View onCreateView (ViewGroup parent ,int viewType ) {
@@ -83,6 +85,7 @@ public View onCreateView(ViewGroup parent,int viewType) {
8385
8486 @ Override
8587 public void onBindView (View view , int position ) {
88+ Log .e ("xx" ,"onBind=" +position );
8689 ImageView imageView = view .findViewById (R .id .imageView );
8790 try {
8891 Glide .with (view .getContext ()).load (stackData .get (position ).getMapImageUrl ()).into (imageView );
@@ -95,25 +98,46 @@ public void onBindView(View view, int position) {
9598 public int getItemCount () {
9699 return stackData .size ();
97100 }
101+ };
98102
103+ StackLayout layout ;
104+ StackLayout .StackAdapter adapter1 = new StackLayout .StackAdapter () {
99105 @ Override
100- public void onItemDisplay (int position ) {
106+ public View onCreateView (ViewGroup parent ) {
107+ return LayoutInflater .from (parent .getContext ()).inflate (R .layout .item_layout ,parent ,false );
108+ }
109+
110+ @ Override
111+ public void onBindView (View view , int position ) {
112+ ImageView imageView = view .findViewById (R .id .imageView );
113+ try {
114+ Glide .with (view .getContext ()).load (stackData .get (position ).getMapImageUrl ()).into (imageView );
115+ }catch (Exception ex ){
116+ ex .printStackTrace ();
117+ }
118+ }
101119
120+ @ Override
121+ public int getItemCount () {
122+ return stackData .size ();
102123 }
103124 };
104125
105126 public StackVH (boolean left ,ViewGroup parent ) {
106127 super (LayoutInflater .from (parent .getContext ()).inflate (
107128 left ? R .layout .stack_left : R .layout .stack_right ,parent ,false ));
108- stackLayout = itemView .findViewById (R .id .stacklayout );
129+ if (left )
130+ stackLayout = itemView .findViewById (R .id .stacklayout );
131+ else
132+ layout = itemView .findViewById (R .id .stacklayout );
109133 }
110134
111135 public void binderVH (final List <ItemEntity > dataList ){
112136 stackData = dataList ;
113- if (stackLayout .getAdapter () == null ) {
137+ if (stackLayout != null && stackLayout .getAdapter () == null ) {
114138 stackLayout .setAdapter (adapter );
115- }else {
116- stackLayout . notifyDataChanged ( );
139+ }else if ( layout != null && layout . getAdapter () == null ) {
140+ layout . setAdapter ( adapter1 );
117141 }
118142 }
119143 }
0 commit comments