Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.recyclerplayground;
- import android.os.Bundle;
- import android.support.v4.app.Fragment;
- import android.support.v7.app.AppCompatActivity;
- import android.support.v7.widget.GridLayoutManager;
- import android.support.v7.widget.LinearLayoutManager;
- import android.support.v7.widget.RecyclerView;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.TextView;
- import java.util.ArrayList;
- public class MainActivity extends AppCompatActivity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- if (savedInstanceState == null) {
- getSupportFragmentManager().beginTransaction()
- .add(android.R.id.content, new MyFragment())
- .commit();
- }
- }
- public static class MyFragment extends Fragment {
- private RecyclerView mRecyclerView;
- private final ArrayList<String> mItems = new ArrayList<>();
- private int mItemCount = 0;
- private int itemsToAdd = 100;
- private MySimpleAdapter mAdapter;
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View v = inflater.inflate(R.layout.activity_main, container, false);
- mRecyclerView = (RecyclerView) v.findViewById(R.id.recyclerView);
- RecyclerView.LayoutManager layoutManager =
- new GridLayoutManager(getContext(), 2, LinearLayoutManager.VERTICAL, false);
- for (mItemCount = 0; mItemCount < itemsToAdd; mItemCount++) {
- mItems.add(mItemCount, "Item # " + mItemCount);
- }
- mAdapter = new MySimpleAdapter(mItems);
- mRecyclerView.setLayoutManager(layoutManager);
- mRecyclerView.setHasFixedSize(true);
- mRecyclerView.setAdapter(mAdapter);
- return v;
- }
- private class MySimpleAdapter extends RecyclerView.Adapter<MySimpleAdapter.ItemHolder> {
- private ArrayList<String> mData;
- MySimpleAdapter(ArrayList<String> data) {
- mData = data;
- }
- @Override
- public ItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- return new ItemHolder(
- LayoutInflater.from(parent.getContext())
- .inflate(android.R.layout.simple_list_item_1, parent, false));
- }
- @Override
- public void onBindViewHolder(final ItemHolder holder, int position) {
- holder.mTextView.setText(mData.get(position));
- }
- @Override
- public int getItemCount() {
- return mData.size();
- }
- class ItemHolder extends RecyclerView.ViewHolder {
- private TextView mTextView;
- ItemHolder(View itemView) {
- super(itemView);
- mTextView = (TextView) itemView.findViewById(android.R.id.text1);
- }
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment