-
Notifications
You must be signed in to change notification settings - Fork 37
/
Copy pathMainActivity.java
72 lines (59 loc) · 2.26 KB
/
MainActivity.java
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
package xyz.zpayh.myadapter;
import android.content.Intent;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.view.View;
import java.util.ArrayList;
import java.util.List;
import xyz.zpayh.adapter.BaseAdapter;
import xyz.zpayh.adapter.BaseViewHolder;
import xyz.zpayh.adapter.OnItemClickListener;
public class MainActivity extends AppCompatActivity {
private RecyclerView mRecyclerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mRecyclerView = (RecyclerView) findViewById(R.id.list);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
final BaseAdapter<String> adapter = new BaseAdapter<String>() {
@Override
public int getLayoutRes(int index) {
return R.layout.item_list;
}
@Override
public void convert(BaseViewHolder holder, String data, int index) {
holder.setText(R.id.tv_act_title,data);
}
@Override
public void bind(BaseViewHolder holder, int layoutRes) {
holder.setClickable(R.id.app_root,true);
}
};
adapter.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(@NonNull View view, int adapterPosition) {
String action = adapter.getData(adapterPosition);
Intent intent = new Intent();
intent.setAction(action);
startActivity(intent);
}
});
mRecyclerView.setAdapter(adapter);
String[] list = getResources().getStringArray(R.array.activity_title);
final List<String> data = new ArrayList<>(list.length);
for (String s : list) {
data.add(s);
}
adapter.setData(data);
}
}