-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSimpleItemActivity.java
More file actions
75 lines (62 loc) · 2.23 KB
/
SimpleItemActivity.java
File metadata and controls
75 lines (62 loc) · 2.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
package com.nstd.rvsample;
import android.view.View;
import android.widget.CheckBox;
import com.nstd.rvsample.R;
import com.nstd.rvadapter.ConfigListener;
import com.nstd.rvadapter.OnItemClickListener;
import com.nstd.rvadapter.OnItemLongClickListener;
import com.nstd.rvadapter.RecyclerViewHolderFactory;
import com.nstd.rvadapter.SimpleRVHolderFactory;
import com.nstd.rvsample.holders.SimpleTextHolder;
import java.util.ArrayList;
import java.util.List;
/**
* Created by Nstd on 2019-08-26 11:03.
*/
public class SimpleItemActivity extends BaseActivity {
private boolean mIsShowIndex = false;
@Override
protected String getTitleStr() {
return "Simple Item Sample";
}
@Override
protected RecyclerViewHolderFactory getFactory() {
return new SimpleRVHolderFactory(SimpleTextHolder.class)
.setConfigListener(new ConfigListener() {
@Override
public Object get(int itemType, int position, String key) {
if(SimpleTextHolder.CONF_SHOW_INDEX.equals(key)) {
return mIsShowIndex;
}
return null;
}
});
}
@Override
protected void initSubViews() {
View subViews = getLayoutInflater().inflate(R.layout.show_index_check_view, getTopLayer(), true);
((CheckBox) subViews.findViewById(R.id.check_box)).setOnCheckedChangeListener((buttonView, isChecked) -> {
mIsShowIndex = isChecked;
mAdapter.notifyDataSetChanged();
});
}
@Override
protected void loadData() {
List<String> data = new ArrayList<>();
String[] origin = {"I can be clicked", "I can be long clicked", "I'm disabled"};
for(int i = 0; i < 10; i++) {
for(String s : origin) {
data.add(s);
}
}
mAdapter.setData(data);
}
@Override
protected OnItemClickListener getItemClickListener() {
return (view, position) -> showMessage("click: " + position);
}
@Override
protected OnItemLongClickListener getItemLongClickListener() {
return (view, position) -> showMessage("long click: " + position);
}
}