use of androidx.appcompat.app.ActionBarDrawerToggle in project SwipeRecyclerView by yanzhenjie.
the class DrawerActivity method onCreate.
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mRecyclerView.setSwipeMenuCreator(mSwipeMenuCreator);
mRecyclerView.setOnItemMenuClickListener(mItemMenuClickListener);
DrawerLayout drawerLayout = findViewById(R.id.drawer_layout);
ActionBarDrawerToggle drawerToggle = new ActionBarDrawerToggle(this, drawerLayout, mToolbar, R.string.app_name, R.string.app_name);
drawerLayout.addDrawerListener(drawerToggle);
drawerToggle.syncState();
mRecyclerView.setAdapter(mAdapter);
mAdapter.notifyDataSetChanged(mDataList);
}
use of androidx.appcompat.app.ActionBarDrawerToggle in project AntennaPod by AntennaPod.
the class MainActivity method setupToolbarToggle.
public void setupToolbarToggle(@NonNull Toolbar toolbar, boolean displayUpArrow) {
if (drawerLayout != null) {
// Tablet layout does not have a drawer
if (drawerToggle != null) {
drawerLayout.removeDrawerListener(drawerToggle);
}
drawerToggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close);
drawerLayout.addDrawerListener(drawerToggle);
drawerToggle.syncState();
drawerToggle.setDrawerIndicatorEnabled(!displayUpArrow);
drawerToggle.setToolbarNavigationClickListener(v -> getSupportFragmentManager().popBackStack());
} else if (!displayUpArrow) {
toolbar.setNavigationIcon(null);
} else {
toolbar.setNavigationIcon(ThemeUtils.getDrawableFromAttr(this, R.attr.homeAsUpIndicator));
toolbar.setNavigationOnClickListener(v -> getSupportFragmentManager().popBackStack());
}
}
use of androidx.appcompat.app.ActionBarDrawerToggle in project IITB-App by wncc.
the class MainActivity method onCreate.
@SuppressLint("ClickableViewAccessibility")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* Check for dark theme */
SharedPreferences sharedPref = getSharedPreferences(Constants.PREF_NAME, Context.MODE_PRIVATE);
Utils.isDarkTheme = sharedPref.getBoolean(Constants.DARK_THEME, false);
if (Utils.isDarkTheme)
this.setTheme(R.style.AppThemeDark);
ServiceGenerator serviceGenerator = new ServiceGenerator(getApplicationContext());
Utils.setRetrofitInterface(serviceGenerator.getRetrofitInterface());
Utils.makeGson();
Utils.makeMarkwon(getApplicationContext());
/* Make notification channel on oreo */
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
createNotificationChannel();
}
setContentView(R.layout.activity_main);
session = new SessionManager(getApplicationContext());
if (session.isLoggedIn()) {
Utils.setSessionId(session.getSessionID());
}
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
feedFragment = new FeedFragment();
updateFragment(feedFragment);
Intent intent = getIntent();
if (intent != null) {
// Check for data passed by FCM
if (intent.getExtras() != null && intent.getBundleExtra(Constants.MAIN_INTENT_EXTRAS) != null) {
handleFCMIntent(intent.getBundleExtra(Constants.MAIN_INTENT_EXTRAS));
} else {
handleIntent(intent);
}
}
checkLatestVersion();
}
use of androidx.appcompat.app.ActionBarDrawerToggle in project twicalico by moko256.
the class MainActivity method onCreate.
@Override
public void onCreate(Bundle savedInstanceState) {
setTheme(R.style.MainActivityTheme);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
disposable = new CompositeDisposable();
client = GlobalApplicationKt.getClient(this);
accountsModel = GlobalApplicationKt.getAccountsModel(this);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.getChildAt(0).setOnClickListener(v -> {
Fragment fragment = getMainFragment();
if (fragment instanceof MovableTopInterface) {
((MovableTopInterface) fragment).moveToTop();
}
});
drawer = findViewById(R.id.drawer_layout);
if (drawer != null) {
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
toggle.setDrawerSlideAnimationEnabled(false);
toggle.syncState();
drawer.addDrawerListener(this);
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setStatusBarColor(ContextCompat.getColor(this, R.color.color_primary_dark));
}
navigationView = findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(item -> {
int id = item.getItemId();
if (!item.isChecked()) {
switch(id) {
case R.id.nav_timeline:
replaceFragment(new HomeTimeLineFragment());
break;
case R.id.nav_mentions:
replaceFragment(new MentionsFragment());
break;
case R.id.nav_account:
startMyUserActivity();
break;
case R.id.nav_follow_and_follower:
replaceFragment(new MyFollowFollowerFragment());
break;
case R.id.nav_like:
replaceFragment(UserLikeFragment.Companion.newInstance(client.getAccessToken().getUserId()));
break;
case R.id.nav_lists:
replaceFragment(SelectListsEntriesFragment.Companion.newInstance(client.getAccessToken().getUserId()));
break;
case R.id.nav_settings:
startActivity(new Intent(this, SettingsActivity.class));
break;
}
}
if (drawer != null) {
drawer.closeDrawer(GravityCompat.START);
}
return (id != R.id.nav_settings) && (id != R.id.nav_account);
});
View headerView = navigationView.inflateHeaderView(R.layout.nav_header_main);
userNameText = headerView.findViewById(R.id.user_name);
userIdText = headerView.findViewById(R.id.user_id);
userImage = headerView.findViewById(R.id.user_image);
userToggleImage = headerView.findViewById(R.id.toggle_account);
userBackgroundImage = headerView.findViewById(R.id.user_bg_image);
userBackgroundImage.setOnClickListener(v -> changeIsDrawerAccountsSelection());
accountListView = new RecyclerView(this);
accountListView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
accountListView.setLayoutManager(new LinearLayoutManager(this));
accountListView.setOverScrollMode(View.OVER_SCROLL_NEVER);
accountListView.setVisibility(View.GONE);
navigationView.addHeaderView(accountListView);
adapter = new SelectAccountsAdapter(this);
adapter.onImageButtonClickListener = accessToken -> {
if (accessToken.getUserId() != client.getAccessToken().getUserId()) {
changeIsDrawerAccountsSelection();
if (drawer != null) {
drawer.closeDrawer(GravityCompat.START);
}
GlobalApplicationKt.preferenceRepository.putString(KEY_ACCOUNT_KEY, accessToken.getKeyString());
((GlobalApplication) getApplication()).initCurrentClient(accessToken);
client = GlobalApplicationKt.getClient(this);
adapter.updateSelectedPosition(accessToken);
updateDrawerImage();
clearAndPrepareFragment();
}
};
adapter.onAddButtonClickListener = v -> startActivityForResult(new Intent(this, OAuthActivity.class), REQUEST_OAUTH);
adapter.onRemoveButtonClickListener = v -> new AlertDialog.Builder(this).setMessage(R.string.confirm_logout).setCancelable(true).setPositiveButton(R.string.do_logout, (dialog, i) -> {
AccessToken token = accountsModel.get(GlobalApplicationKt.preferenceRepository.getString(KEY_ACCOUNT_KEY, "-1"));
accountsModel.delete(token);
adapter.removeAccessTokensAndUpdate(token);
int point = accountsModel.size() - 1;
if (point != -1) {
AccessToken accessToken = accountsModel.getAccessTokens().get(point);
GlobalApplicationKt.preferenceRepository.putString(KEY_ACCOUNT_KEY, accessToken.getKeyString());
((GlobalApplication) getApplication()).initCurrentClient(accessToken);
client = GlobalApplicationKt.getClient(this);
adapter.updateSelectedPosition(accessToken);
updateDrawerImage();
updateAccountsList();
clearAndPrepareFragment();
} else {
GlobalApplicationKt.preferenceRepository.putString(KEY_ACCOUNT_KEY, "-1");
((GlobalApplication) getApplication()).clearCurrentClient();
startActivityForResult(new Intent(this, OAuthActivity.class), REQUEST_OAUTH);
}
}).setNegativeButton(android.R.string.cancel, null).show();
accountListView.setAdapter(adapter);
findViewById(R.id.fab).setOnClickListener(v -> startActivity(new Intent(this, PostActivity.class)));
tabLayout = findViewById(R.id.toolbar_tab);
tabLayout.addOnTabSelectedListener(this);
alwaysCloseApp = GlobalApplicationKt.preferenceRepository.getBoolean(KEY_ALWAYS_CLOSE_APP, true);
recycledViewPool = new RecyclerView.RecycledViewPool();
recycledViewPool.setMaxRecycledViews(R.layout.layout_post_card, 16);
getSupportFragmentManager().addOnBackStackChangedListener(() -> attachFragment(getMainFragment()));
if (client == null) {
startActivityForResult(new Intent(this, OAuthActivity.class), REQUEST_OAUTH);
} else {
updateDrawerImage();
updateAccountsList();
if (savedInstanceState == null) {
prepareFragment();
}
if (client.getAccessToken().getToken().isEmpty()) {
Toast.makeText(this, R.string.please_re_login, Toast.LENGTH_LONG).show();
}
}
}
use of androidx.appcompat.app.ActionBarDrawerToggle in project MyJapanese by 54wall.
the class MainActivity method initDrawerLayout.
private void initDrawerLayout() {
mDrawerLayout = findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, mDrawerLayout, mToolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
mDrawerLayout.addDrawerListener(toggle);
toggle.syncState();
Log.i(TAG, "initDrawerLayout: OK");
}
Aggregations