Skip to content

Commit 881ae79

Browse files
Merge pull request #138 from Omega-R/feature/base_list_adapter_improve
removed provideViewHolder from BaseListAdapter, updated deps
2 parents 05698f2 + 90ca037 commit 881ae79

File tree

5 files changed

+14
-22
lines changed

5 files changed

+14
-22
lines changed

app/src/main/java/com/omega_r/omegarecyclerview/ListAdapterExample/ListAdapter.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.view.ViewGroup;
44
import android.widget.TextView;
55

6+
import androidx.annotation.NonNull;
67
import com.omega_r.libs.omegarecyclerview.BaseListAdapter;
78
import com.omega_r.omegarecyclerview.R;
89

@@ -13,8 +14,9 @@ public ListAdapter(BaseListAdapter.OnItemClickListener<String> clickListener,
1314
super(clickListener, longClickListener);
1415
}
1516

17+
@NonNull
1618
@Override
17-
protected ViewHolder provideViewHolder(ViewGroup parent) {
19+
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
1820
return new SampleViewHolder(parent);
1921
}
2022

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ buildscript {
77
google()
88
}
99
dependencies {
10-
classpath 'com.android.tools.build:gradle:3.3.2'
10+
classpath 'com.android.tools.build:gradle:3.4.2'
1111
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
1212

1313
// NOTE: Do not place your application dependencies here; they belong
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
#Wed Mar 06 12:09:01 MSK 2019
1+
#Mon Aug 19 10:05:28 MSK 2019
22
distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip

omegarecyclerviewlibs/build.gradle

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ android {
2525

2626
dependencies {
2727
implementation fileTree(dir: 'libs', include: ['*.jar'])
28-
implementation 'androidx.appcompat:appcompat:1.1.0-alpha01'
29-
implementation 'com.google.android.material:material:1.1.0-alpha02'
30-
28+
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
29+
implementation 'com.google.android.material:material:1.1.0-alpha09'
3130
}

omegarecyclerviewlibs/src/main/java/com/omega_r/libs/omegarecyclerview/BaseListAdapter.java

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,13 @@
1010

1111
public abstract class BaseListAdapter<T> extends OmegaRecyclerView.Adapter<BaseListAdapter<T>.ViewHolder> {
1212

13-
private static final int INDEX_NOT_FOUND = -1;
14-
1513
private List<T> items;
1614

1715
@Nullable
18-
private OnItemClickListener<T> clickListener = null;
16+
private OnItemClickListener<T> clickListener;
1917

2018
@Nullable
21-
private OnItemLongClickListener<T> longClickListener = null;
22-
23-
24-
protected abstract BaseListAdapter<T>.ViewHolder provideViewHolder(ViewGroup parent);
19+
private OnItemLongClickListener<T> longClickListener;
2520

2621
public BaseListAdapter(@NonNull List<T> items,
2722
@Nullable OnItemClickListener<T> clickListener,
@@ -99,13 +94,6 @@ private void onLongItemClick(T item) {
9994
}
10095
}
10196

102-
@NonNull
103-
@Override
104-
public BaseListAdapter<T>.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
105-
return provideViewHolder(parent);
106-
}
107-
108-
@SuppressWarnings("unchecked")
10997
@Override
11098
public void onBindViewHolder(@NonNull BaseListAdapter<T>.ViewHolder holder, int position) {
11199
holder.bind(getItem(position));
@@ -116,7 +104,9 @@ public int getItemCount() {
116104
return items.size();
117105
}
118106

119-
public abstract class ViewHolder extends OmegaRecyclerView.ViewHolder implements View.OnClickListener, View.OnLongClickListener {
107+
public abstract class ViewHolder extends OmegaRecyclerView.ViewHolder implements
108+
View.OnClickListener,
109+
View.OnLongClickListener {
120110

121111
private T item;
122112

@@ -134,6 +124,7 @@ private void bind(T item) {
134124
if (clickListener != null) {
135125
itemView.setOnClickListener(this);
136126
}
127+
137128
if (longClickListener != null) {
138129
itemView.setOnLongClickListener(this);
139130
}

0 commit comments

Comments
 (0)