androidx.recyclerview.widget.RecyclerView#addItemDecoration ( )源码实例Demo

下面列出了androidx.recyclerview.widget.RecyclerView#addItemDecoration ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: a   文件: FilePicker.java
@Override
@NonNull
protected LinearLayout makeCenterView() {
    @SuppressLint("InflateParams") LinearLayout rootLayout = (LinearLayout) LayoutInflater.from(activity).inflate(R.layout.view_file_picker, null);

    RecyclerView recyclerView = rootLayout.findViewById(R.id.rv_file);
    recyclerView.addItemDecoration(new DividerItemDecoration(activity, LinearLayout.VERTICAL));
    recyclerView.setLayoutManager(new LinearLayoutManager(activity));
    recyclerView.setAdapter(adapter);

    emptyView = rootLayout.findViewById(R.id.tv_empty);

    RecyclerView pathView = rootLayout.findViewById(R.id.rv_path);
    pathView.setLayoutManager(new LinearLayoutManager(activity, LinearLayout.HORIZONTAL, false));
    pathView.setAdapter(pathAdapter);

    return rootLayout;
}
 
源代码2 项目: Markwon   文件: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // obtain an instance of Markwon
    // here we are creating as core markwon (no additional plugins are registered)
    final Markwon markwon = Markwon.create(this);

    final Adapt adapt = Adapt.create();

    final List<Item> items = new ArrayList<>();
    final SampleItem.OnClickListener onClickListener = this::showSample;
    for (Sample sample : Sample.values()) {
        items.add(new SampleItem(sample, markwon, onClickListener));
    }
    adapt.setItems(items);

    final RecyclerView recyclerView = findViewById(R.id.recycler_view);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    recyclerView.setHasFixedSize(true);
    recyclerView.addItemDecoration(createSampleItemDecoration());
    recyclerView.setAdapter(adapt);
}
 
源代码3 项目: YouTube-In-Background   文件: FavoritesFragment.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState)
{
    // Inflate the layout for this fragment
    View rootView = inflater.inflate(R.layout.fragment_recently_watched, container, false);
    TextView fragmentListTitle = (TextView) rootView.findViewById(R.id.text_view_title);
    fragmentListTitle.setText(getResources().getString(R.string.fragment_title_favorite));

    recyclerView = (RecyclerView) rootView.findViewById(R.id.recently_played);
    recyclerView.setLayoutManager(getLayoutManager());
    recyclerView.addItemDecoration(getItemDecoration());

    recyclerView.getItemAnimator().setAddDuration(500);
    recyclerView.getItemAnimator().setChangeDuration(500);
    recyclerView.getItemAnimator().setMoveDuration(500);
    recyclerView.getItemAnimator().setRemoveDuration(500);

    videoListAdapter = getAdapter();
    videoListAdapter.setOnItemClickListener(this);
    recyclerView.setAdapter(videoListAdapter);

    return rootView;
}
 
源代码4 项目: BaldPhone   文件: VideoTutorialsActivity.java
@Override
protected void onCreate(@Nullable final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_help);
    final RecyclerView recycler_view = findViewById(R.id.recycler_view);
    final DividerItemDecoration dividerItemDecoration =
            new DividerItemDecoration(recycler_view.getContext(), DividerItemDecoration.VERTICAL);
    dividerItemDecoration.setDrawable(getDrawable(R.drawable.ll_divider));
    recycler_view.addItemDecoration(dividerItemDecoration);
    final Resources resources = getResources();
    recycler_view.setAdapter(
            new HelpRecyclerViewAdapter(
                    this,
                    S.typedArrayToResArray(resources, R.array.yt_texts),
                    S.typedArrayToResArray(resources, R.array.yt_logos)));
}
 
源代码5 项目: SmsCode   文件: HomeActivity.java
private void onChooseThemePreferenceClicked() {
    if (mThemeChooseDialog == null) {
        ThemeItemAdapter adapter = new ThemeItemAdapter(this,
                ThemeItemContainer.get().getThemeItemList());
        adapter.setOnItemClickListener(mItemClickListener);
        RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(this);

        mThemeChooseDialog = new MaterialDialog.Builder(this)
                .title(R.string.pref_choose_theme_title)
                .adapter(adapter, layoutManager)
                .negativeText(R.string.cancel)
                .build();

        RecyclerView recyclerView = mThemeChooseDialog.getRecyclerView();
        recyclerView.addItemDecoration(new DividerItemDecoration(this, LinearLayout.VERTICAL));
    }
    mThemeChooseDialog.show();
}
 
源代码6 项目: tap-android-sdk   文件: MainActivity.java
private void initRecyclerView() {
    RecyclerView recyclerView = findViewById(R.id.recyclerView);
    recyclerView.setHasFixedSize(true);

    RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(this);
    recyclerView.setLayoutManager(layoutManager);

    List<TapListItem> listItems = new ArrayList<>();

    adapter = new RecyclerViewAdapter(listItems);
    recyclerView.addItemDecoration(new DividerItemDecoration(this,LinearLayoutManager.VERTICAL));
    recyclerView.setAdapter(adapter);
}
 
@Override
public View onCreateView(
        @NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    // Inflate the layout for this fragment with the ProductGrid theme
    View view = inflater.inflate(R.layout.shr_product_grid_fragment, container, false);

    // Set up the tool bar
    setUpToolbar(view);

    // Set up the RecyclerView
    RecyclerView recyclerView = view.findViewById(R.id.recycler_view);
    recyclerView.setHasFixedSize(true);
    GridLayoutManager gridLayoutManager = new GridLayoutManager(getContext(), 2, GridLayoutManager.HORIZONTAL, false);
    gridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
        @Override
        public int getSpanSize(int position) {
            return position % 3 == 2 ? 2 : 1;
        }
    });
    recyclerView.setLayoutManager(gridLayoutManager);
    StaggeredProductCardRecyclerViewAdapter adapter = new StaggeredProductCardRecyclerViewAdapter(
            ProductEntry.initProductEntryList(getResources()));
    recyclerView.setAdapter(adapter);
    int largePadding = getResources().getDimensionPixelSize(R.dimen.shr_staggered_product_grid_spacing_large);
    int smallPadding = getResources().getDimensionPixelSize(R.dimen.shr_staggered_product_grid_spacing_small);
    recyclerView.addItemDecoration(new ProductGridItemDecoration(largePadding, smallPadding));

    // Set cut corner background for API 23+
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        view.findViewById(R.id.product_grid)
            .setBackgroundResource(R.drawable.shr_product_grid_background_shape);
    }

    return view;
}
 
源代码8 项目: Chimee   文件: SaveActivity.java
private void setupRecyclerView(List<String> files) {
    RecyclerView recyclerView = findViewById(R.id.rv_document_list);
    LinearLayoutManager horizontalLayoutManager
            = new LinearLayoutManager(this,
            LinearLayoutManager.HORIZONTAL, false);
    recyclerView.setLayoutManager(horizontalLayoutManager);
    DividerItemDecoration dividerItemDecoration =
            new DividerItemDecoration(recyclerView.getContext(),
                    horizontalLayoutManager.getOrientation());
    recyclerView.addItemDecoration(dividerItemDecoration);
    adapter = new SimpleListRvAdapter(this, files);
    adapter.setClickListener(this);
    recyclerView.setAdapter(adapter);
}
 
源代码9 项目: BaldPhone   文件: S.java
public static void showDropDownPopup(BaldActivity baldActivity, int windowsWidth, DropDownRecyclerViewAdapter.DropDownListener dropDownListener, View view) {
    final RelativeLayout dropDownContainer = (RelativeLayout) LayoutInflater.from(baldActivity).inflate(R.layout.drop_down_recycler_view, null, false);
    final RecyclerView recyclerView = dropDownContainer.findViewById(R.id.recycler_view);
    recyclerView.setLayoutManager(new LinearLayoutManager(baldActivity) {
        @Override
        public boolean canScrollVertically() {
            return false;
        }
    });
    final PopupWindow popupWindow = new PopupWindow(dropDownContainer, (int) (windowsWidth / 1.3),
            (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 82 * dropDownListener.size(), baldActivity.getResources().getDisplayMetrics()), true);
    recyclerView.addItemDecoration(
            new HorizontalDividerItemDecoration.Builder(baldActivity)
                    .drawable(R.drawable.settings_divider)
                    .build()
    );

    recyclerView.setAdapter(new DropDownRecyclerViewAdapter(baldActivity, popupWindow, dropDownListener));

    final ViewGroup root = (ViewGroup) baldActivity.getWindow().getDecorView().getRootView();
    if (root == null) throw new AssertionError();
    popupWindow.setOnDismissListener(() -> {
        S.clearDim(root);
        dropDownListener.onDismiss();
    });
    popupWindow.setBackgroundDrawable(baldActivity.getDrawable(R.drawable.empty));
    popupWindow.showAsDropDown(view);
    baldActivity.autoDismiss(popupWindow);
    S.applyDim(root);
}
 
源代码10 项目: BaldPhone   文件: CreditsActivity.java
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_credits);
    RecyclerView recyclerView = findViewById(R.id.recycler_view);
    names = getResources().getStringArray(R.array.names);
    tasks = getResources().getStringArray(R.array.tasks);

    recyclerView.setAdapter(new CreditsAdapter());
    final DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(), DividerItemDecoration.VERTICAL);
    dividerItemDecoration.setDrawable(Objects.requireNonNull(getDrawable(R.drawable.ll_divider)));
    recyclerView.addItemDecoration(dividerItemDecoration);

}
 
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setTitle("Rx线性排布");
    RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerview);
    textView1 = (TextView) findViewById(R.id.text1);
    textView2 = (TextView) findViewById(R.id.text2);
    textView3 = (TextView) findViewById(R.id.text3);
    textView4 = (TextView) findViewById(R.id.text4);
    helper = new RxAdapterHelper();
    SimpleRxHelperAdapter adapter = new SimpleRxHelperAdapter(helper);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    recyclerView.addItemDecoration(new StickyHeaderDecoration(adapter));
    recyclerView.setAdapter(adapter);

    helper.notifyLoadingDataAndHeaderChanged(SimpleHelper.LEVEL_THIRD, 3);
    textView3.postDelayed(() -> {
        Random random = new Random();
        int rand = random.nextInt(6);
        List<MultiHeaderEntity> list = new ArrayList<>();
        for (int i = 0, size = rand + 1; i < size; i++) {
            list.add(new ThirdItem(String.format(Locale.getDefault(), "我是第三种类型%d", i), 12 + i));
        }
        textView3.setText(String.format(Locale.getDefault(), "类型3的数量:%d", list.size()));
        helper.notifyModuleDataAndHeaderChanged(list, new HeaderThirdItem("我是第三种类型的头", IDUtil.getId()), SimpleHelper.LEVEL_THIRD);
    }, 3000);
}
 
private void showPlayers() {
    if (manager == null || getContext() == null) return;

    RecyclerView recyclerView = new RecyclerView(getContext());
    recyclerView.setLayoutManager(new LinearLayoutManager(getContext(), RecyclerView.VERTICAL, false));
    recyclerView.addItemDecoration(new DividerItemDecoration(getContext(), DividerItemDecoration.VERTICAL));
    recyclerView.setAdapter(new PlayersAdapter(getContext(), manager.players(), this));

    MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(getContext());
    builder.setTitle(R.string.playersLabel)
            .setView(recyclerView)
            .setPositiveButton(android.R.string.ok, null);

    DialogUtils.showDialog(getActivity(), builder);
}
 
private void updateDeviceList() {
    mListAdapter = new ListAdapter<>(
            mSwitchBotMessageService.getDeviceList(),
            R.layout.list_modify_and_delete_row,
            this);
    RecyclerView deviceList = findViewById(R.id.list_device);
    deviceList.setHasFixedSize(true);
    deviceList.setLayoutManager(new LinearLayoutManager(this));
    deviceList.addItemDecoration(new DividerItemDecoration(this, DividerItemDecoration.VERTICAL));
    deviceList.setAdapter(mListAdapter);
}
 
源代码14 项目: SugarAdapter   文件: MainActivity.java
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    RecyclerView recyclerView = findViewById(R.id.recycler);
    recyclerView.setLayoutManager(new LinearLayoutManager(this));
    recyclerView.addItemDecoration(new DividerItemDecoration(this, RecyclerView.VERTICAL));

    // Choose one of usage example
    simpleUsageExample(recyclerView);
    // singleDataMultiHolderExample(recyclerView);
    // sugarHolderListenerExample(recyclerView);
    // lifecycleAwareExample(recyclerView);
}
 
源代码15 项目: Ruisi   文件: FrageMyTopic.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    super.onCreateView(inflater, container, savedInstanceState);
    Bundle bundle = getArguments();//从activity传过来的Bundle
    int uid = 0;
    if (bundle != null) {
        uid = bundle.getInt("uid", 0);
        String username = bundle.getString("username", "我的");
        if (uid == 0) {
            title = "我的帖子";
        } else {
            title = username + "的帖子";
        }
    }
    initToolbar(true, title);
    RecyclerView recyclerView = mRootView.findViewById(R.id.recycler_view);
    recyclerView.setHasFixedSize(true);
    SwipeRefreshLayout refreshLayout = mRootView.findViewById(R.id.refresh_layout);
    refreshLayout.setEnabled(false);
    String myUid = App.getUid(getActivity());

    url = "home.php?mod=space&uid=" + (uid > 0 ? uid : myUid) + "&do=thread&view=me&mobile=2";
    datas = new ArrayList<>();
    adapter = new MyPostsListAdapter(getActivity(), datas);

    LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity());
    recyclerView.addItemDecoration(new MyListDivider(getActivity(), MyListDivider.VERTICAL));
    recyclerView.addOnScrollListener(new LoadMoreListener(layoutManager, this, 10));
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(adapter);
    refresh();
    return mRootView;
}
 
源代码16 项目: cathode   文件: GridRecyclerViewFragment.java
@Override protected void addItemDecorations(RecyclerView recyclerView) {
  GridLayoutManager layoutManager = (GridLayoutManager) recyclerView.getLayoutManager();

  if (itemSpacing == null) {
    final int horizontalSpacing = getHorizontalSpacing();
    final int verticalSpacing = getVerticalSpacing();
    itemSpacing = new GridLayoutItemSpacing(layoutManager, horizontalSpacing, verticalSpacing);
  }

  recyclerView.addItemDecoration(itemSpacing);
}
 
源代码17 项目: header-decor   文件: InlineDoubleHeaderFragment.java
@Override
protected void setAdapterAndDecor(@NonNull RecyclerView list) {
    final InlineDoubleHeaderTestAdapter adapter = new InlineDoubleHeaderTestAdapter(requireContext());
    decor = new DoubleHeaderDecoration(adapter, true);
    setHasOptionsMenu(true);

    list.setAdapter(adapter);
    list.addItemDecoration(decor, 1);
    list.addOnItemTouchListener(this);
}
 
@Nullable
@Override
public View onCreateView(final LayoutInflater inflater,
                         @Nullable final ViewGroup container,
                         @Nullable final Bundle savedInstanceState) {
	View inflate = inflater.inflate(R.layout.fragment_github, container, false);

	mGithubPresenter = new GithubPresenter(
			getUIRouter(),
			getMenuController(),
			MainManager.getInstance().getStargazersManager(),
			MainManager.getInstance().getForksManager(),
			mMainPresenterView
	);

	mSwipeToRefresh = (SwipeRefreshLayout) inflate.findViewById(R.id.refresh);
	mSwipeToRefresh.setOnRefreshListener(() -> mGithubPresenter.onRefresh());

	mRecyclerViewAdapter = new RendererRecyclerViewAdapter();
	mRecyclerViewAdapter.setDiffCallback(new ItemsDiffCallback());
	mRecyclerViewAdapter.registerRenderer(new LoadMoreViewBinder(R.layout.item_load_more));
	mRecyclerViewAdapter.registerRenderer(createStargazerRenderer(R.layout.item_user_full_width));
	mRecyclerViewAdapter.registerRenderer(createListRenderer()
			.registerRenderer(createForkRenderer())
			.registerRenderer(createStargazerRenderer(R.layout.item_user_150))
	);

	mRecyclerViewAdapter.registerRenderer(new ViewBinder<>(
			R.layout.item_category,
			CategoryModel.class,
			(model, finder, payloads) -> finder
					.find(R.id.title, (ViewProvider<TextView>) view -> view.setText(model.getName()))
					.setOnClickListener(R.id.viewAll, (v -> mGithubPresenter.onCategoryClicked(model)))
	));

	mLayoutManager = new GridLayoutManager(getContext(), MAX_SPAN_COUNT);
	mLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
		@Override
		public int getSpanSize(final int position) {
			final Type type = mRecyclerViewAdapter.getType(position);
			if (type.equals(ForkModel.class) || type.equals(StargazerModel.class)) {
				return 1;
			}
			return 3;
		}
	});

	mRecyclerView = (RecyclerView) inflate.findViewById(R.id.recycler_view);
	mRecyclerView.setLayoutManager(mLayoutManager);
	mRecyclerView.setAdapter(mRecyclerViewAdapter);
	mRecyclerView.addItemDecoration(new MyItemDecoration());
	mRecyclerView.addOnScrollListener(new EndlessScrollListener() {
		@Override
		public void onLoadMore(final int page, final int totalItemsCount) {
			mGithubPresenter.onLoadMore();
		}
	});
	return inflate;
}
 
源代码19 项目: PagerBottomTabStrip   文件: BehaviorActivity.java
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    RecyclerView recyclerView = view.findViewById(R.id.recyclerView);
    recyclerView.setAdapter(new TestAdapter());
    recyclerView.addItemDecoration(new DividerItemDecoration(view.getContext(), DividerItemDecoration.VERTICAL));
}
 
源代码20 项目: Jockey   文件: RecyclerViewBindingAdapters.java
@BindingAdapter("itemDecorations")
public static void setItemDecorations(RecyclerView recyclerView, ItemDecoration... decor) {
    for (ItemDecoration decoration : decor) {
        recyclerView.addItemDecoration(decoration);
    }
}