Skip to content
This repository was archived by the owner on Sep 3, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 23 additions & 34 deletions app/src/main/java/de/dlyt/yanndroid/oneuiexample/MainActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@

import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.core.content.res.ResourcesCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
Expand All @@ -32,11 +33,12 @@
import de.dlyt.yanndroid.oneui.menu.MenuItem;
import de.dlyt.yanndroid.oneui.menu.PopupMenu;
import de.dlyt.yanndroid.oneui.sesl.support.ViewSupport;
import de.dlyt.yanndroid.oneui.sesl.tabs.SamsungTabLayout;
import de.dlyt.yanndroid.oneui.sesl.utils.ReflectUtils;
import de.dlyt.yanndroid.oneui.utils.CustomButtonClickListener;
import de.dlyt.yanndroid.oneui.utils.ThemeUtil;
import de.dlyt.yanndroid.oneui.view.Snackbar;
import de.dlyt.yanndroid.oneui.widget.BottomNavigationView;
import de.dlyt.yanndroid.oneui.widget.TabLayout;
import de.dlyt.yanndroid.oneuiexample.base.BaseThemeActivity;
import de.dlyt.yanndroid.oneuiexample.utils.TabsManager;

Expand All @@ -53,7 +55,7 @@ public class MainActivity extends BaseThemeActivity {
private TabsManager mTabsManager;

private DrawerLayout drawerLayout;
private BottomNavigationView bnvLayout;
private TabLayout tabLayout;
private PopupMenu bnvPopupMenu;

private ActivityResultLauncher<Intent> activityResultLauncher;
Expand Down Expand Up @@ -90,29 +92,11 @@ public void onConfigurationChanged(Configuration newConfig) {
}
}

@Override
public void onPause() {
super.onPause();

if (bnvLayout != null) {
bnvLayout.setResumeStatus(false);
}
}

@Override
protected void onResume() {
super.onResume();

if (bnvLayout != null) {
bnvLayout.setResumeStatus(true);
}
}

private void init() {
ViewSupport.semSetRoundedCorners(getWindow().getDecorView(), 0);

drawerLayout = findViewById(R.id.drawer_view);
bnvLayout = findViewById(R.id.main_samsung_tabs);
tabLayout = findViewById(R.id.main_samsung_tabs);

sharedPrefName = "mainactivity_tabs";
mTabsTagName = getResources().getStringArray(R.array.mainactivity_tab_tag);
Expand Down Expand Up @@ -172,40 +156,43 @@ public void onVoiceInputClick(Intent intent) {
}
});

//BottomNavigationLayout
Drawable icon = getDrawable(R.drawable.ic_samsung_drawer);
icon.setColorFilter(getResources().getColor(R.color.sesl_tablayout_text_color), PorterDuff.Mode.SRC_IN);
// TabLayout
tabLayout.setTabMode(SamsungTabLayout.SESL_MODE_FIXED_AUTO);

for (String s : mTabsTitleName) {
bnvLayout.addTab(bnvLayout.newTab().setText(s));
tabLayout.addTab(tabLayout.newTab().setText(s));
}
bnvLayout.addTabCustomButton(icon, new CustomButtonClickListener(bnvLayout) {

Drawable icon = ResourcesCompat.getDrawable(getResources(), R.drawable.ic_samsung_drawer, getTheme());
icon.setColorFilter(getResources().getColor(R.color.sesl_tablayout_text_color), PorterDuff.Mode.SRC_IN);
tabLayout.addTabCustomButton(icon, new CustomButtonClickListener(tabLayout) {
@Override
public void onClick(View v) {
popupView(v);
}
});

bnvLayout.addOnTabSelectedListener(new BottomNavigationView.OnTabSelectedListener() {
public void onTabSelected(BottomNavigationView.Tab tab) {
tabLayout.addOnTabSelectedListener(new SamsungTabLayout.OnTabSelectedListener() {
public void onTabSelected(SamsungTabLayout.Tab tab) {
int tabPosition = tab.getPosition();
mTabsManager.setTabPosition(tabPosition);
setCurrentItem();
}

public void onTabUnselected(BottomNavigationView.Tab tab) {
public void onTabUnselected(SamsungTabLayout.Tab tab) {
}

public void onTabReselected(BottomNavigationView.Tab tab) {
public void onTabReselected(SamsungTabLayout.Tab tab) {
}
});
bnvLayout.updateWidget(this);

setCurrentItem();
}

private void setCurrentItem() {
if (bnvLayout.isEnabled()) {
if (tabLayout.isEnabled()) {
int tabPosition = mTabsManager.getCurrentTab();
BottomNavigationView.Tab tab = bnvLayout.getTabAt(tabPosition);
SamsungTabLayout.Tab tab = tabLayout.getTabAt(tabPosition);
if (tab != null) {
tab.select();
setFragment(tabPosition);
Expand All @@ -217,15 +204,16 @@ private void setCurrentItem() {
drawerLayout.getToolbarMenu().findItem(R.id.search).setVisible(true);
drawerLayout.setImmersiveScroll(false);
((androidx.drawerlayout.widget.DrawerLayout) drawerLayout.findViewById(R.id.drawerLayout)).setDrawerLockMode(androidx.drawerlayout.widget.DrawerLayout.LOCK_MODE_UNLOCKED);
tabLayout.seslShowDotBadge(1, true);
} else {
// MainActivitySecondFragment
drawerLayout.setSubtitle("Preferences");
drawerLayout.setNavigationButtonVisible(false);
drawerLayout.getToolbarMenu().findItem(R.id.search).setVisible(false);
drawerLayout.setImmersiveScroll(true);
((androidx.drawerlayout.widget.DrawerLayout) drawerLayout.findViewById(R.id.drawerLayout)).setDrawerLockMode(androidx.drawerlayout.widget.DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
tabLayout.seslShowDotBadge(1, false);
}

}
}
}
Expand Down Expand Up @@ -372,6 +360,7 @@ private void popupView(View view) {
@Override
public boolean onMenuItemClick(MenuItem item) {
item.setBadge(item.getBadge() + 1);
tabLayout.seslShowBadge(2, true, String.valueOf(item.getBadge()));
return true;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@

import androidx.fragment.app.Fragment;

import de.dlyt.yanndroid.oneui.widget.TabLayout;
import de.dlyt.yanndroid.oneui.view.ViewPager;
import de.dlyt.yanndroid.oneui.widget.TabLayout;
import de.dlyt.yanndroid.oneuiexample.R;
import de.dlyt.yanndroid.oneuiexample.base.BaseThemeActivity;
import de.dlyt.yanndroid.oneuiexample.tabs.ViewPagerAdapter;
Expand Down Expand Up @@ -40,11 +40,11 @@ public void onViewCreated(View view, Bundle savedInstanceState) {
getView().setBackgroundColor(getResources().getColor(mActivity.mUseOUI4Theme ? R.color.sesl4_round_and_bgcolor : R.color.sesl_round_and_bgcolor));

// TabLayout and ViewPager
TabLayout tabLayout = mRootView.findViewById(R.id.tabLayout);
TabLayout subTabs = mRootView.findViewById(R.id.sub_tabs);
subTabs.seslSetSubTabStyle();
ViewPager viewPager = mRootView.findViewById(R.id.viewPager);
viewPager.setAdapter(new ViewPagerAdapter(getChildFragmentManager()));
tabLayout.setupWithViewPager(viewPager);
tabLayout.updateWidget();
subTabs.setupWithViewPager(viewPager);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,12 @@
import de.dlyt.yanndroid.oneui.sesl.recyclerview.LinearLayoutManager;
import de.dlyt.yanndroid.oneui.view.RecyclerView;
import de.dlyt.yanndroid.oneui.view.ViewPager;
import de.dlyt.yanndroid.oneui.widget.BottomNavigationView;
import de.dlyt.yanndroid.oneui.view.IndexScrollView;
import de.dlyt.yanndroid.oneui.widget.TabLayout;
import de.dlyt.yanndroid.oneuiexample.R;

public class IconsTab extends Fragment {
//229
//230
Integer[] imageIDs = {R.drawable.ic_samsung_accessibility,
R.drawable.ic_samsung_account,
R.drawable.ic_samsung_advanced_feature,
Expand Down Expand Up @@ -333,8 +332,8 @@ public void handleOnBackPressed() {

public void setSelecting(boolean enabled) {
DrawerLayout drawerLayout = ((DrawerLayout) getActivity().findViewById(R.id.drawer_view));
TabLayout tabLayout = getActivity().findViewById(R.id.tabLayout);
BottomNavigationView bnv = getActivity().findViewById(R.id.main_samsung_tabs);
TabLayout subTabs = getActivity().findViewById(R.id.sub_tabs);
TabLayout mainTabs = getActivity().findViewById(R.id.main_samsung_tabs);
ViewPager viewPager = getActivity().findViewById(R.id.viewPager);

if (enabled) {
Expand All @@ -357,8 +356,8 @@ public void setSelecting(boolean enabled) {
for (Boolean b : selected.values()) if (b) count++;
drawerLayout.setSelectModeCount(count);
});
tabLayout.setEnabled(false);
bnv.setEnabled(false);
subTabs.setEnabled(false);
mainTabs.setEnabled(false);
viewPager.setPagingEnabled(false);
onBackPressedCallback.setEnabled(true);
} else {
Expand All @@ -368,8 +367,8 @@ public void setSelecting(boolean enabled) {

drawerLayout.setSelectModeCount(0);
drawerLayout.dismissSelectMode();
tabLayout.setEnabled(true);
bnv.setEnabled(true);
subTabs.setEnabled(true);
mainTabs.setEnabled(true);
viewPager.setPagingEnabled(true);
onBackPressedCallback.setEnabled(false);
}
Expand Down
4 changes: 2 additions & 2 deletions app/src/main/res/layout/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@
android:layout_height="match_parent"
app:layout_location="main_content" />

<de.dlyt.yanndroid.oneui.widget.BottomNavigationView
<de.dlyt.yanndroid.oneui.widget.TabLayout
android:id="@+id/main_samsung_tabs"
android:layout_width="match_parent"
android:layout_height="60.0dip"
android:layout_height="wrap_content"
app:layout_location="footer" />

<include layout="@layout/content_drawer" />
Expand Down
4 changes: 2 additions & 2 deletions app/src/main/res/layout/fragment_first.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
android:orientation="vertical">

<de.dlyt.yanndroid.oneui.widget.TabLayout
android:id="@+id/tabLayout"
android:id="@+id/sub_tabs"
android:layout_width="match_parent"
android:layout_height="60.0dip" />
android:layout_height="wrap_content" />

<de.dlyt.yanndroid.oneui.widget.RoundLinearLayout
android:layout_width="match_parent"
Expand Down
Loading