Java Examples for com.quinny898.library.persistentsearch.SearchBox

The following java examples will help you to understand the usage of com.quinny898.library.persistentsearch.SearchBox. These source code samples are taken from different open source projects.

Example 1
Project: PersistentSearch-master  File: MainActivity.java View source code
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    search = (SearchBox) findViewById(R.id.searchbox);
    search.enableVoiceRecognition(this);
    for (int x = 0; x < 10; x++) {
        SearchResult option = new SearchResult("Result " + Integer.toString(x), getResources().getDrawable(R.drawable.ic_history));
        search.addSearchable(option);
    }
    search.setMenuListener(new MenuListener() {

        @Override
        public void onMenuClick() {
            //Hamburger has been clicked
            Toast.makeText(MainActivity.this, "Menu click", Toast.LENGTH_LONG).show();
        }
    });
    search.setSearchListener(new SearchListener() {

        @Override
        public void onSearchOpened() {
        //Use this to tint the screen
        }

        @Override
        public void onSearchClosed() {
        //Use this to un-tint the screen
        }

        @Override
        public void onSearchTermChanged(String term) {
        //React to the search term changing
        //Called after it has updated results
        }

        @Override
        public void onSearch(String searchTerm) {
            Toast.makeText(MainActivity.this, searchTerm + " Searched", Toast.LENGTH_LONG).show();
        }

        @Override
        public void onResultClick(SearchResult result) {
        //React to a result being clicked
        }

        @Override
        public void onSearchCleared() {
        //Called when the clear button is clicked
        }
    });
    search.setOverflowMenu(R.menu.overflow_menu);
    search.setOverflowMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {

        @Override
        public boolean onMenuItemClick(MenuItem item) {
            switch(item.getItemId()) {
                case R.id.test_menu_item:
                    Toast.makeText(MainActivity.this, "Clicked!", Toast.LENGTH_SHORT).show();
                    return true;
            }
            return false;
        }
    });
}
Example 2
Project: ExpressHelper-master  File: MainActivity.java View source code
@Override
protected void setUpViews() {
    View statusHeaderView1 = findViewById(R.id.statusHeaderView1);
    statusHeaderView1.getLayoutParams().height = statusBarHeight;
    mSearchBox = (SearchBox) findViewById(R.id.searchBox);
    mCompanyListPage = findViewById(R.id.company_list_page);
    mCompanyListPageBackground = findViewById(R.id.company_list_page_background);
    mCompanyList = (ObservableRecyclerView) mCompanyListPage.findViewById(R.id.recycler_view);
    mSearchBox.setLogoText("");
    mSearchBox.setHintText(getString(R.string.search_hint_company));
    mCompanyList.setLayoutManager(new LinearLayoutManager(this));
    mCompanyList.setHasFixedSize(true);
    mHeaderView = findViewById(R.id.header);
    ViewCompat.setElevation(mHeaderView, getResources().getDimension(R.dimen.toolbar_elevation));
    mPager = (ViewPager) findViewById(R.id.pager);
    /** Set up SlidingTabLayout */
    mSlidingTab = (SlidingTabLayout) findViewById(R.id.sliding_tabs);
    mSlidingTab.setCustomTabView(R.layout.tab_indicator, android.R.id.text1);
    mSlidingTab.setSelectedIndicatorColors(getResources().getColor(android.R.color.white));
    mSlidingTab.setDistributeEvenly(true);
    mSlidingTab.setOnTabItemClickListener(new SlidingTabLayout.OnTabItemClickListener() {

        @Override
        public void onTabItemClick(int pos) {
            BaseHomeFragment fragment = (BaseHomeFragment) mPagerAdapter.getItemAt(pos);
            try {
                fragment.scrollToTopItem();
            } catch (Exception e) {
            }
        }
    });
    // When the page is selected, other fragments' scrollY should be adjusted
    // according to the toolbar status(shown/hidden)
    mSlidingTab.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

        @Override
        public void onPageScrolled(int i, float v, int i2) {
        }

        @Override
        public void onPageSelected(int i) {
            propagateToolbarState(toolbarIsShown());
        }

        @Override
        public void onPageScrollStateChanged(int i) {
        }
    });
    /** Set up FloatingActionButton */
    mFAB = (FloatingActionButton) findViewById(R.id.fab);
    mFAB.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            AddActivity.launch(MainActivity.this, mFAB);
        }
    });
}
Example 3
Project: Discipul-Android-master  File: RoosterActivity.java View source code
//region Lifecycle
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    /* Setup */
    boolean shouldUpdateToolbar = false;
    setContentView(R.layout.activity_rooster);
    toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    actionBar = getSupportActionBar();
    actionBar.setDisplayShowTitleEnabled(false);
    Account.getInstance(this);
    new NextUurNotifications(this);
    if (savedInstanceState == null) {
        // Defaults
        roosterType = PersoonlijkRoosterFragment.class;
        mainFragment = RoosterViewFragment.newInstance(roosterType, getSelectedWeek());
        isRooster = true;
        isShowingBackArrow = false;
        getSupportFragmentManager().beginTransaction().add(R.id.container, mainFragment).commit();
    } else {
        roosterType = (Class<? extends RoosterViewFragment>) savedInstanceState.getSerializable(ROOSTER_TYPE);
        mainFragment = (RoosterViewFragment) getSupportFragmentManager().findFragmentById(R.id.container);
        isRooster = savedInstanceState.getBoolean("isRooster");
        isShowingBackArrow = savedInstanceState.getBoolean("isShowingBackArrow");
        shouldUpdateToolbar = true;
        setSelectedWeek(savedInstanceState.getInt("WEEK"));
        currentSelection = savedInstanceState.getInt("drawerSelection");
        if (!isRooster) {
            ((PGTVRoosterFragment) mainFragment).setType((PGTVRoosterFragment.PGTVType) savedInstanceState.getSerializable("PGTVTYPE"));
        }
    }
    /* Navigation Drawer */
    drawerHeader = new AccountHeaderBuilder().withActivity(this).addProfiles(Account.isSet() ? (profileDrawerItem = new ProfileDrawerItem().withName(Account.getName()).withEmail(Account.getUserType() == Account.UserType.LEERLING ? "Klas " + Account.getLeerlingKlas() : "Docentcode: " + Account.getLeraarCode())) : (profileDrawerItem = new ProfileDrawerItem().withName("Nog niet ingelogd"))).withCompactStyle(!Account.isSet()).withHeaderBackground(R.drawable.drawer_header_blurred).withHeaderBackgroundScaleType(ImageView.ScaleType.CENTER_CROP).withOnAccountHeaderListener(( view,  iProfile,  b) -> false).withSavedInstance(savedInstanceState).withProfileImagesVisible(false).withSelectionListEnabled(false).build();
    ArrayList<String> groups = new ArrayList<>(Arrays.asList(getResources().getStringArray(R.array.drawer_groups)));
    ArrayList<ArrayList<String>> itemTitles = new ArrayList<ArrayList<String>>() {

        {
            add(new ArrayList<>(Arrays.asList(getResources().getStringArray(R.array.drawer_items_roosters))));
            add(new ArrayList<>(Arrays.asList(getResources().getStringArray(R.array.drawer_items_pgtv))));
        }
    };
    ArrayList<ArrayList<String>> itemIcons = new ArrayList<ArrayList<String>>() {

        {
            add(new ArrayList<>(Arrays.asList(getResources().getStringArray(R.array.drawer_icons_rooster))));
            add(new ArrayList<>(Arrays.asList(getResources().getStringArray(R.array.drawer_icons_pgtv))));
        }
    };
    DrawerBuilder drawerBuilder = new DrawerBuilder().withActivity(this).withToolbar(toolbar).withAccountHeader(drawerHeader).withCloseOnClick(true).withActionBarDrawerToggleAnimated(true).withSavedInstance(savedInstanceState).withOnDrawerItemClickListener(( view,  i,  iDrawerItem) -> {
        if (iDrawerItem == null)
            return false;
        // first digit
        int firstDigit = iDrawerItem.getIdentifier() / 10;
        // second digit
        int secondDigit = iDrawerItem.getIdentifier() % 10;
        Class<? extends RoosterViewFragment> newType;
        if (firstDigit == 0) {
            newType = RoosterViewFragment.types[secondDigit];
            setRoosterType(newType);
        } else if (firstDigit == 1) {
            // PGTV group
            newType = PGTVRoosterFragment.class;
            PGTVRoosterFragment.PGTVType pgtvType;
            switch(secondDigit) {
                case 0:
                    pgtvType = PGTVRoosterFragment.PGTVType.ROOSTER;
                    break;
                case 1:
                    pgtvType = PGTVRoosterFragment.PGTVType.MEDEDELINGEN;
                    break;
                default:
                    pgtvType = PGTVRoosterFragment.PGTVType.ROOSTER;
                    break;
            }
            setRoosterType(newType, pgtvType);
        } else if (firstDigit == 2) {
            // Settings
            drawer.closeDrawer();
            drawer.setSelection(currentSelection);
            Intent preferencesIntent = new Intent(this, PreferencesActivity.class);
            startActivity(preferencesIntent);
            return false;
        }
        drawer.closeDrawer();
        currentSelection = iDrawerItem.getIdentifier();
        return true;
    });
    int i = 0;
    for (String groupName : groups) {
        drawerBuilder.addDrawerItems(new SectionDrawerItem().setDivider(i != 0).withName(groupName));
        int u = 0;
        for (String childName : itemTitles.get(i)) {
            int resource = HelperFunctions.getResId(itemIcons.get(i).get(u), R.drawable.class);
            drawerBuilder.addDrawerItems(new PrimaryDrawerItem().withName(childName).withIdentifier(10 * i + u).withIcon(resource));
            u++;
        }
        i++;
    }
    drawer = drawerBuilder.addDrawerItems(new DividerDrawerItem(), new PrimaryDrawerItem().withName("Instellingen").withIcon(R.drawable.ic_settings_grey).withIdentifier(20)).build();
    drawer.setSelection(currentSelection);
    drawerLayout = drawer.getDrawerLayout();
    actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close) {

        @Override
        public void onDrawerOpened(View view) {
            supportInvalidateOptionsMenu();
        }

        @Override
        public void onDrawerClosed(View view) {
            updateToolbarViews();
        }

        @Override
        public void onDrawerSlide(View view, float v) {
            if (isShowingBackArrow) {
                super.onDrawerSlide(view, 1);
            } else {
                super.onDrawerSlide(view, v);
            }
        }
    };
    drawerLayout.setDrawerListener(actionBarDrawerToggle);
    View.OnClickListener toolbarOnClickListener =  view -> {
        if (roosterType == EntityRoosterFragment.class && isShowingBackArrow) {
            onBackPressed();
        } else {
            if (drawer.isDrawerOpen()) {
                drawer.closeDrawer();
            } else {
                drawer.openDrawer();
            }
        }
    };
    toolbar.setNavigationOnClickListener(toolbarOnClickListener);
    actionBarDrawerToggle.setToolbarNavigationClickListener(toolbarOnClickListener);
    /* Search */
    searchBox = (SearchBox) findViewById(R.id.searchbox);
    searchBox.enableVoiceRecognition(this);
    if (shouldUpdateToolbar)
        setShowBackArrow(isShowingBackArrow);
    // hier gebeurt de rest
    RoosterInfo.getWeken(this, this::addWekenToToolbar);
}
Example 4
Project: HeartBeat-master  File: MainActivity.java View source code
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);
    CrashHandler.register(this);
    setSupportActionBar(mToolbar);
    setTitle("");
    final ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager);
    setupViewPager(viewPager);
    TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
    tabLayout.setupWithViewPager(viewPager);
    tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {

        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            viewPager.setCurrentItem(tab.getPosition());
            setTitle(mViewPagerAdapter.getFragmentTitle(tab.getPosition()));
            tab.setContentDescription(mViewPagerAdapter.getPageIcon(tab.getPosition(), getThemeAccentColor(MainActivity.this)));
        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {
            tab.setContentDescription(mViewPagerAdapter.getPageIcon(tab.getPosition(), ContextCompat.getColor(getApplicationContext(), R.color.tab_white_trans)));
        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {
        }
    });
    // init TabLayout
    setTitle(mViewPagerAdapter.getFragmentTitle(0));
    tabLayout.getTabAt(0).setContentDescription(mViewPagerAdapter.getPageIcon(0, getThemeAccentColor(this)));
    mFab.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            Intent i = new Intent();
            i.setAction(Intent.ACTION_MAIN);
            i.setClass(MainActivity.this, AddEventActivity.class);
            startActivity(i);
        }
    });
    mSearchHistory = new ArrayList<>();
    mSearchBox.setLogoText(getString(R.string.search_hint));
    mSearchBox.setSearchListener(new SearchBox.SearchListener() {

        @Override
        public void onSearchOpened() {
        }

        @Override
        public void onSearchCleared() {
        }

        @Override
        public void onSearchClosed() {
            mSearchBox.hideCircularly(MainActivity.this);
        }

        @Override
        public void onSearchTermChanged(String s) {
        }

        @Override
        public void onSearch(String s) {
            if (mSearchHistory.size() == SEARCH_HISTORY_SIZE) {
                mSearchHistory.remove(SEARCH_HISTORY_SIZE - 1);
            }
            if (!mSearchHistory.contains(s)) {
                mSearchHistory.add(0, s);
            }
            Intent i = new Intent(Intent.ACTION_MAIN);
            i.setClass(MainActivity.this, SearchResultActivity.class);
            i.putExtra("search", s);
            startActivity(i);
        }

        @Override
        public void onResultClick(SearchResult searchResult) {
        }
    });
    if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
        if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
            showPermissionInfo();
        } else {
            ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE }, PERMISSION_REQUEST_STORAGE);
        }
    }
}
Example 5
Project: YodaQA-Android-master  File: MainActivity.java View source code
@AfterViews
protected void afterViews() {
    pager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
    tabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(pager));
    ResponseFragmentTabAdapter adapter = new ResponseFragmentTabAdapter(getSupportFragmentManager(), getFragments(), new String[] { getString(R.string.answer_title), getString(R.string.sources_title) });
    pager.setAdapter(adapter);
    tabLayout.setTabsFromPagerAdapter(adapter);
    search.enableVoiceRecognition(this);
    search.setMenuListener(new SearchBox.MenuListener() {

        @Override
        public void onMenuClick() {
            if (!searchOpened) {
                Log.d(TAG, "Search bar menu clicked -> opening.");
                search.toggleSearch();
            }
        }
    });
    search.setSearchListener(this);
    search.setLogoText(getString(R.string.enter_something));
    loadResults();
}