Как изменить имя кнопки при нажатии предыдущей кнопки - PullRequest
0 голосов
/ 09 ноября 2019
  1. Первое изображение setText("Create"), оно будет изменено.

  2. Второе изображение, которое я выдаю, кнопка Создать не изменяется Когда я нажимаю NewButton затем имя кнопки изменилось, в то время как оно называется CreateButton , но когда я нажимаю предыдущую кнопку, тогда Createbutton имя не меняется. Это имя кнопки времени будет Новая кнопка

Код HomeActivity

public class HomeActivity extends AppCompatActivity implements DashboardFragment.dashBoardListener,NewConnectionFragement.ToApprovedListListener,
        ToApprovedListAdapter.ItemSelectListener, CratePurchaseSupplierAdapter.ItemSelectListener {

    // drawer related
    ExpandableListView expandableListView;
    ExpandableListAdapter expandableListAdapter;
    List<String> expandableListTitle;
    HashMap<String, List<String>> expandableListDetail;

    private void doMySearch(String text){
        MainMenuGlobalVariables.allProductDataSearchResult = new ArrayList<Product>();
        MainMenuGlobalVariables.relationshipCustomerAllDataSearchResult = new ArrayList<RelationshipCustomerModel>();
        MainMenuGlobalVariables.relationshipSupplierAllDataSearchResult = new ArrayList<RelationshipSupplierModel>();
        MainMenuGlobalVariables.orderSalesAllDataSearchResult = new ArrayList<Sales>();
        MainMenuGlobalVariables.orderPurchaseAllDataSearchResult = new ArrayList<Purchase>();



        switch (MainMenuGlobalVariables.selectedTab){
            case 2:{
                for(Product product:MainMenuGlobalVariables.allProductData){
                    if(product.getProductName().toLowerCase().startsWith(text)){
                        MainMenuGlobalVariables.allProductDataSearchResult.add(product);
                    }
                }
                if(MainMenuGlobalVariables.allProductDataSearchResult.size()>0)
                    replaceFragment(R.id.nav_inventory);
                break;
            }

            case 3:{
                if(MainMenuGlobalVariables.relationshipSelectTap == 0){
                    for(RelationshipCustomerModel customer:MainMenuGlobalVariables.relationshipCustomerAllData){
                        if(customer.getName().toLowerCase().startsWith(text)){
                            MainMenuGlobalVariables.relationshipCustomerAllDataSearchResult.add(customer);
                        }
                    }
                }
                else{
                    for(RelationshipSupplierModel supplier:MainMenuGlobalVariables.relationshipSupplierAllData){
                        if(supplier.getName().toLowerCase().startsWith(text)){
                            MainMenuGlobalVariables.relationshipSupplierAllDataSearchResult.add(supplier);
                        }
                    }
                }

                replaceFragment(R.id.nav_relationship);
                break;
            }

            case 5:{
                if(MainMenuGlobalVariables.orderSelectTap == 0){
                    for(Sales sales:MainMenuGlobalVariables.orderSalesAllData){
                        if(sales.getCustomerType().toLowerCase().startsWith(text)){
                            MainMenuGlobalVariables.orderSalesAllDataSearchResult.add(sales);
                        }
                    }
                }
                else{
                    for(Purchase purchase:MainMenuGlobalVariables.orderPurchaseAllData){
                        if(purchase.getCustomerType().toLowerCase().startsWith(text)){
                            MainMenuGlobalVariables.orderPurchaseAllDataSearchResult.add(purchase);
                        }
                    }
                }
                replaceFragment(R.id.nav_order);
                break;
            }
            default:
                break;
        }
    }


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
//        getSupportActionBar().setTitle(getString(R.string.app_name));
        setContentView(R.layout.activity_home);


        final SearchView search = findViewById(R.id.search_word);

        SearchView.OnQueryTextListener onQueryTextListener = new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {

                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                doMySearch(newText.toLowerCase());
                return true;
            }
        };
        search.setOnQueryTextListener(onQueryTextListener);



        replaceFragment(R.id.nav_dashboard);
        toolbarControl(R.id.nav_dashboard);
        BottomNavigationView navView = findViewById(R.id.nav_view);
        navView.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);


        // drawer menu
        final DrawerLayout drawerLayout = findViewById(R.id.home_activity_drawer_layout);
        ImageView drawerMenuButton = findViewById(R.id.drawer_menu_button);

        ActionBarDrawerToggle actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, null, R.string.app_name, R.string.app_name);
        drawerLayout.addDrawerListener(actionBarDrawerToggle);
        actionBarDrawerToggle.syncState();

        drawerMenuButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(drawerLayout.isDrawerOpen(GravityCompat.START))
                    drawerLayout.closeDrawer(GravityCompat.START);
                else
                    drawerLayout.openDrawer(GravityCompat.START);
            }
        });

        ((LinearLayout) findViewById(R.id.drawer_design_parent)).setOnClickListener(null);

        expandableListView = (ExpandableListView) findViewById(R.id.expandableListView);
        expandableListDetail = DataPump.getData();
        expandableListTitle = new ArrayList<String>(expandableListDetail.keySet());
        expandableListAdapter = new DrawerMenuExpendableList(this, expandableListTitle, expandableListDetail);
        expandableListView.setAdapter(expandableListAdapter);

        expandableListView.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
            @Override
            public boolean onChildClick(ExpandableListView parent, View v,
                                        int groupPosition, int childPosition, long id) {
                Toast.makeText(
                        getApplicationContext(),
                        expandableListTitle.get(groupPosition)
                                + " -> "
                                + expandableListDetail.get(
                                expandableListTitle.get(groupPosition)).get(
                                childPosition), Toast.LENGTH_SHORT
                ).show();
                return false;
            }
        });

    }

    //this method control toolbar
    @Nullable
    private void toolbarControl(int tabId){


        final TextView toolbarFilter = (TextView) findViewById(R.id.toolbar_filter);
        final TextView toolbarName = (TextView) findViewById(R.id.toolbar_name);
        final TextView toolbarListView = (TextView) findViewById(R.id.toolbar_list_view);
        final TextView toolbarTopRightButton = (TextView) findViewById(R.id.toolbar_purchase_new_btn);

        toolbarTopRightButton.setOnClickListener( new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
                ft.replace(R.id.fragment_container, new PurchaseOrderCreateFragment() );
                toolbarTopRightButton.setText("Create");


                ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
                ft.addToBackStack(null);
                ft.commit();



            }
        } );

        if(tabId == R.id.nav_dashboard){
            toolbarFilter.setVisibility(View.INVISIBLE);
            toolbarListView.setVisibility(View.INVISIBLE);
            toolbarTopRightButton.setVisibility(View.GONE);
            toolbarName.setText("Dashboard");
        }

        if(tabId == R.id.nav_inventory){
            toolbarFilter.setVisibility(View.VISIBLE);
            toolbarListView.setVisibility(View.VISIBLE);
            toolbarTopRightButton.setVisibility(View.GONE);
            toolbarName.setText("Inventory");

            ////Listener///
            toolbarFilter.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Toast.makeText(HomeActivity.this, "Filter clicked", Toast.LENGTH_SHORT).show();
                }
            });

            // Toolbar view list or grid
            toolbarListView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if(MainMenuGlobalVariables.isInventoryList){
                        toolbarListView.setText("List View");
                        replaceFragment(R.id.nav_inventory);
                        MainMenuGlobalVariables.isInventoryList = false;
                    }
                    else{
                        toolbarListView.setText("Grid View");
                        replaceFragment(R.id.nav_inventory);
                        replaceFragment(MainMenuGlobalVariables.selectedTab);
                        MainMenuGlobalVariables.isInventoryList = true;
                    }
                }
            });
        }

        if(tabId == R.id.nav_relationship){
            toolbarFilter.setVisibility(View.INVISIBLE);
            toolbarListView.setVisibility(View.INVISIBLE);
            toolbarTopRightButton.setVisibility(View.GONE);
            toolbarName.setText("Relationship");
        }

        if(tabId == R.id.nav_craft){
            toolbarFilter.setVisibility(View.INVISIBLE);
            toolbarListView.setVisibility(View.INVISIBLE);
            toolbarTopRightButton.setVisibility(View.GONE);
            toolbarName.setText("Craft");
        }

        if(tabId == R.id.nav_order){
            toolbarFilter.setVisibility(View.INVISIBLE);
            toolbarListView.setVisibility(View.GONE);
            toolbarTopRightButton.setVisibility(View.VISIBLE);
            toolbarName.setText("Order");
        }

    }

    // this method replace fragment in main activity
    @SuppressLint("NewApi")
    public void replaceFragment(int tabId){
        DashboardFragment dashboardFragment = new DashboardFragment();
        InventoryFragment inventoryFragment = new InventoryFragment();
        RelationshipFragment relationshipFragment = new RelationshipFragment();
        CraftFragment craftFragment = new CraftFragment();
        OrderMaintainFragment orderFragment = new OrderMaintainFragment();
        NewConnectionFragement newConnectionFragement = new NewConnectionFragement();
         BlankFragment blankFragment = new BlankFragment();
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();

        if(tabId == R.id.nav_dashboard){
            if(MainMenuGlobalVariables.dashBoardNewConnection){
                ft.replace(R.id.fragment_container, newConnectionFragement );
                MainMenuGlobalVariables.dashBoardNewConnection = false;
            }
            else if(MainMenuGlobalVariables.toApprovedList){
                ft.replace(R.id.fragment_container, new ToApprovedListFragment() );
                MainMenuGlobalVariables.toApprovedList = false;

            }
            else if (MainMenuGlobalVariables.approval){
                ft.replace(R.id.fragment_container, new ApprovalFragment() );
                MainMenuGlobalVariables.approval = false;

            }
            else
                ft.replace(R.id.fragment_container, dashboardFragment);
        }
        if(tabId == R.id.nav_inventory){
            ft.replace(R.id.fragment_container, inventoryFragment);
        }
        if(tabId == R.id.nav_relationship)
            ft.replace(R.id.fragment_container, relationshipFragment);
        if(tabId == R.id.nav_craft)
            ft.replace(R.id.fragment_container, craftFragment);
        if(tabId == R.id.nav_order)
            if(MainMenuGlobalVariables.createPurchaseSupplier){
                MainMenuGlobalVariables.createPurchaseSupplier = false;
                ft.replace( R.id.fragment_container,blankFragment );
            }else
            ft.replace(R.id.fragment_container, orderFragment);



        ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
        ft.addToBackStack(null);
        ft.commit();

    }

    // bottom navigation control
    private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
            = new BottomNavigationView.OnNavigationItemSelectedListener() {

        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) {
            switch (item.getItemId()) {
                case R.id.nav_dashboard:
                    replaceFragment(R.id.nav_dashboard);
                    MainMenuGlobalVariables.selectedTab = 1;
                    toolbarControl(R.id.nav_dashboard);
                    return true;
                case R.id.nav_inventory:
                    replaceFragment(R.id.nav_inventory);
                    MainMenuGlobalVariables.selectedTab = 2;
                    toolbarControl(R.id.nav_inventory);
                    return true;
                case R.id.nav_relationship:
                    replaceFragment(R.id.nav_relationship);
                    MainMenuGlobalVariables.selectedTab = 3;
                    toolbarControl(R.id.nav_relationship);
                    return true;
                case R.id.nav_craft:
                    replaceFragment(R.id.nav_craft);
                    MainMenuGlobalVariables.selectedTab = 4;
                    toolbarControl(R.id.nav_craft);
                    return true;
                case R.id.nav_order:
                    replaceFragment(R.id.nav_order);
                    MainMenuGlobalVariables.selectedTab = 5;
                    toolbarControl(R.id.nav_order);
                    return true;

            }
            return false;
        }
    };

    @Override
    public void dashBordNewConnectionFragmentLoad() {
        replaceFragment( R.id.nav_dashboard );
    }

    @Override
    public void toApprovedListFragmentLoad() {replaceFragment( R.id.nav_dashboard ); }


    @Override
    public void mOnClick(String value) {

        replaceFragment( R.id.nav_dashboard );
    }

    @Override
    public void createOnClicked(String name) {
        MainMenuGlobalVariables.pOCItemCompanyName=name;
        replaceFragment( R.id.nav_order );
    }
}


I would like to get the answer just will be changing my create button & answer would be New Button


  [1]: https://i.stack.imgur.com/74nTv.png
  [2]: https://i.stack.imgur.com/Kzq40.png
...