转载请注明出处 http://blog.csdn.net/stevenduan17
最近有需求做多级树形结构的列表,使用ExpandableListView不能实现,无奈,只能自己写了,主要时层级之间使用padding来体现层级关系,先看效果
话不多说,直接上代码
主界面及列表实现
public class MainActivity extends AppCompatActivity {
private static final String TAG = MainActivity.class.getName();
@BindView(R.id.mRecyclerView)
RecyclerView mRecyclerView;
private MyAdapter myAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
getSupportActionBar().setTitle("多级树列表");
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
myAdapter = new MyAdapter();
mRecyclerView.setAdapter(myAdapter);
//先初始化两条数据
addData(1, 0);
}
class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
private List<Node> list = new ArrayList<>();