Search in sources :

Example 1 with DeckInfoListAdapter

use of com.ichi2.anki.widgets.DeckInfoListAdapter in project AnkiChinaAndroid by ankichinateam.

the class StudyOptionsFragment method onCreateView.

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    if (container == null) {
        return null;
    }
    mStudyOptionsView = inflater.inflate(R.layout.studyoptions_fragment, container, false);
    initOption();
    // we need to restore here, as we need it before super.onCreate() is called.
    // Open Collection on UI thread while splash screen is showing
    mToolbar = mStudyOptionsView.findViewById(R.id.toolbar);
    if (mToolbar != null) {
        mToolbar.inflateMenu(R.menu.study_options_fragment);
        mToolbar.setNavigationOnClickListener(v -> onNavigationPressed());
        // TextView title = mToolbar.findViewById(R.id.toolbar_title);
        // title.setOnClickListener(v -> getAnkiActivity().startActivityForResultWithAnimation(new Intent(getAnkiActivity(), CardBrowser.class), REQUEST_BROWSE_CARDS, ActivityTransitionAnimation.LEFT));
        // title.setVisibility(View.VISIBLE);
        // title.setText("卡牌浏览器");
        mTabLayout = mToolbar.findViewById(R.id.tab_layout);
        TabLayout.Tab tab = mTabLayout.newTab();
        View view = getLayoutInflater().inflate(R.layout.item_deckinfo_tab, null);
        ((TextView) view.findViewById(R.id.name)).setText("学习");
        tab.setCustomView(view);
        mTabLayout.addTab(tab);
        TabLayout.Tab tab2 = mTabLayout.newTab();
        View view2 = getLayoutInflater().inflate(R.layout.item_deckinfo_tab, null);
        ((TextView) view2.findViewById(R.id.name)).setText("笔记");
        tab2.setCustomView(view2);
        mTabLayout.addTab(tab2);
        mTabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {

            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                if (tab == tab2) {
                    getAnkiActivity().openCardBrowser();
                }
            }

            @Override
            public void onTabUnselected(TabLayout.Tab tab) {
            }

            @Override
            public void onTabReselected(TabLayout.Tab tab) {
            }
        });
        configureToolbar();
    }
    // refreshInterface(true);
    // displaySyncBadge();
    // check, if tablet layout
    mStudyoptionsFrame = mStudyOptionsView.findViewById(R.id.studyoptions_fragment);
    // set protected variable from NavigationDrawerActivity
    // mFragmented = mStudyoptionsFrame != null && mStudyoptionsFrame.getVisibility() == View.VISIBLE;
    mFragmented = false;
    if (mFragmented) {
        loadStudyOptionsFragment(false);
    }
    mRecyclerView = mStudyOptionsView.findViewById(R.id.files);
    // mNoDecksPlaceholder.setVisibility(View.GONE);
    // specify a LinearLayoutManager and set up item dividers for the RecyclerView
    mRecyclerViewLayoutManager = new LinearLayoutManager(getAnkiActivity());
    mRecyclerView.setLayoutManager(mRecyclerViewLayoutManager);
    TypedArray ta = getContext().obtainStyledAttributes(new int[] { R.attr.deckDivider });
    Drawable divider = ta.getDrawable(0);
    ta.recycle();
    // DividerItemDecoration dividerDecorator = new DividerItemDecoration(getAnkiActivity(), mRecyclerViewLayoutManager.getOrientation());
    // dividerDecorator.setDrawable(divider);
    // 
    // mRecyclerView.addItemDecoration(dividerDecorator);
    // create and set an adapter for the RecyclerView
    mDeckListAdapter = new DeckInfoListAdapter(getLayoutInflater(), getAnkiActivity());
    mDeckListAdapter.setDeckClickListener(mDeckClickListener);
    mDeckListAdapter.setCountsClickListener(mCountsClickListener);
    mDeckListAdapter.setDeckExpanderClickListener(mDeckExpanderClickListener);
    mDeckListAdapter.setDeckLongClickListener(mDeckLongClickListener);
    mRecyclerView.setAdapter(mDeckListAdapter);
    mNoSubDeckHint = mStudyOptionsView.findViewById(R.id.text_no_child);
    mShortAnimDuration = getResources().getInteger(android.R.integer.config_shortAnimTime);
    return mStudyOptionsView;
}
Also used : TabLayout(com.google.android.material.tabs.TabLayout) TypedArray(android.content.res.TypedArray) ColorDrawable(android.graphics.drawable.ColorDrawable) Drawable(android.graphics.drawable.Drawable) TextView(android.widget.TextView) DeckInfoListAdapter(com.ichi2.anki.widgets.DeckInfoListAdapter) LinearLayoutManager(androidx.recyclerview.widget.LinearLayoutManager) ImageView(android.widget.ImageView) View(android.view.View) RecyclerView(androidx.recyclerview.widget.RecyclerView) TextView(android.widget.TextView) Nullable(androidx.annotation.Nullable)

Aggregations

TypedArray (android.content.res.TypedArray)1 ColorDrawable (android.graphics.drawable.ColorDrawable)1 Drawable (android.graphics.drawable.Drawable)1 View (android.view.View)1 ImageView (android.widget.ImageView)1 TextView (android.widget.TextView)1 Nullable (androidx.annotation.Nullable)1 LinearLayoutManager (androidx.recyclerview.widget.LinearLayoutManager)1 RecyclerView (androidx.recyclerview.widget.RecyclerView)1 TabLayout (com.google.android.material.tabs.TabLayout)1 DeckInfoListAdapter (com.ichi2.anki.widgets.DeckInfoListAdapter)1