mirror of
https://github.com/alibaba/Tangram-Android.git
synced 2026-10-17 05:07:05 +08:00
Merge branch 'develop'
This commit is contained in:
@@ -125,7 +125,7 @@ public class BaseCell<V extends View> extends ComponentLifecycle implements View
|
||||
|
||||
private ArrayMap<String, Object> bizParaMap = new ArrayMap<>(32);
|
||||
|
||||
private ArrayMap<View, Integer> innerClickMap = new ArrayMap<>();
|
||||
private ArrayMap<Integer, Integer> innerClickMap = new ArrayMap<>();
|
||||
|
||||
@Nullable
|
||||
public ServiceManager serviceManager;
|
||||
@@ -156,7 +156,7 @@ public class BaseCell<V extends View> extends ComponentLifecycle implements View
|
||||
if (service != null) {
|
||||
int pos = this.pos;
|
||||
if (innerClickMap.containsKey(v)) {
|
||||
pos = innerClickMap.get(v).intValue();
|
||||
pos = innerClickMap.get(v.hashCode()).intValue();
|
||||
}
|
||||
service.onClick(v, this, pos);
|
||||
}
|
||||
@@ -165,7 +165,12 @@ public class BaseCell<V extends View> extends ComponentLifecycle implements View
|
||||
|
||||
public void setOnClickListener(View view, int eventType) {
|
||||
view.setOnClickListener(this);
|
||||
innerClickMap.put(view, Integer.valueOf(eventType));
|
||||
innerClickMap.put(view.hashCode(), Integer.valueOf(eventType));
|
||||
}
|
||||
|
||||
public void clearClickListener(View view, int eventType) {
|
||||
view.setOnClickListener(null);
|
||||
innerClickMap.remove(view.hashCode());
|
||||
}
|
||||
|
||||
public final void notifyDataChange() {
|
||||
@@ -286,7 +291,7 @@ public class BaseCell<V extends View> extends ComponentLifecycle implements View
|
||||
* for compatible
|
||||
*/
|
||||
public void unbindView(@NonNull V view) {
|
||||
|
||||
clearClickListener(view, 0);
|
||||
}
|
||||
|
||||
/***
|
||||
|
||||
@@ -111,6 +111,14 @@ public class BannerCell extends BaseCell {
|
||||
public float getPageWidth(int position) {
|
||||
return Float.isNaN(pageWidth) ? 1f : pageWidth;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void destroyItem(ViewGroup container, int position, Object object) {
|
||||
if (object instanceof BinderViewHolder) {
|
||||
((BinderViewHolder) object).unbind();
|
||||
}
|
||||
super.destroyItem(container, position, object);
|
||||
}
|
||||
}
|
||||
|
||||
public void setAutoScrollInternal(int mAutoScroll_internal) {
|
||||
|
||||
Reference in New Issue
Block a user