How to pass data to navigation drawer item?

Hoo

I am using a nav drawer with three items(Time sheet, claims, project) and I would like to pass ab to claims. In time sheet I have 3 activities, the ab is in the work_details activity.How can I do to achieve this?

TimeSheet has 3 activities (Information(extend to fragment),work force,work details)

Claims has 2 activities(claims(extend to fragment), cameraMain).

WorkDetails.java

  Button btn1 = (Button) findViewById(R.id.button2);
  btn1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View arg0) {
                AlertDialog.Builder builder = new AlertDialog.Builder(WorkDetailsTable.this);
                builder.setTitle("Data Saved");
                builder.setMessage("Are you sure you want to save?");
                builder.setIcon(android.R.drawable.ic_dialog_alert);
                builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int ii) {
                long ab = ts.insertTimeSheet(name, weather, date, status,b,i);         
               Bundle bundle =new Bundle();
               bundle.putString("ab","ab");
               Claims o=new Claims();
               o.setArguments(bundle);
}

Claims.java

final Long fk=this.getArguments().getLong("ab");
 Button button = (Button) claims.findViewById(R.id.button8);
button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View arg0) {
                Intent intent = new Intent(getActivity().getApplicationContext(), CameraMain.class);
                Toast.makeText(getActivity().getApplicationContext(), fk+"", Toast.LENGTH_LONG).show();
                startActivity(intent);
            }
        });
        return claims;
    }

I refer from Send data from activity to fragment in android but the app crashed when I select claims item.

11-02 09:25:55.910 6116-6116/com.example.project.project E/AndroidRuntime﹕ FATAL EXCEPTION: main Process: com.example.project.project, PID: 6116 java.lang.NullPointerException at com.example.project.project.Claims.onCreateView(Claims.java:59) at android.app.Fragment.performCreateView(Fragment.java:1700) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890) at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062) at android.app.BackStackRecord.run(BackStackRecord.java:684) at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1453)

I think the NullPointException is came from here

fk=data.getLong("ab");

Do I need to add the parameter in MainActivity?

MainActivity.java

Some part of code snippet in mainActivity

 private void selectItem(int position) {

            Fragment fragment = null;

            switch (position) {
                case 0:
                    fragment=new Information();
                    break;
                case 1:
                    fragment=new Claims();
                    break;

                case 2:
                    fragment=new Project();

                case 3:
                    fragment=new Report();

                case 4:
                    fragment=new ViewView();

                default:
                    break;
            }

            if (fragment != null) {
                FragmentManager fragmentManager = getFragmentManager();
                fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();

                mDrawerList.setItemChecked(position, true);
                mDrawerList.setSelection(position);
                setTitle(mNavigationDrawerItemTitles[position]);
                mDrawerLayout.closeDrawer(mDrawerList);

            } else {
                Log.e("MainActivity", "Error in creating fragment");
            }

EDITED

 Button btn1 = (Button) findViewById(R.id.button2);
        btn1.setOnClickListener(new View.OnClickListener() {
            public void onClick(View arg0) {
                AlertDialog.Builder builder = new AlertDialog.Builder(WorkDetailsTable.this);
                builder.setTitle("Data Saved");
                builder.setMessage("Are you sure you want to save?");
                builder.setIcon(android.R.drawable.ic_dialog_alert);
                builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int ii) {
               long ab = ts.insertTimeSheet(name, weather, date, status,b,i);
                Bundle bundle =new Bundle();
                bundle.putLong("ab",ab);
                Claims o=new Claims();
                o.setArguments(bundle);
                }

Claims.java

  Bundle bundle=this.getArguments();
  fk=bundle.getLong("ab");
  button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getActivity().getApplicationContext(), fk+"", Toast.LENGTH_LONG).show();
                AlertDialogRadio(a1);


            }
        });

MainActivity

  private void selectItem(int position) {

            Fragment fragment = null;

            switch (position) {
                case 0:
                    fragment=new Information();
                    break;
                case 1:
                    fragment=new Claims();
                    break;

                case 2:
                    fragment=new Project();
                    break;

                case 3:
                    fragment=new Report();
                    break;

                case 4:
                    fragment=new ViewView();

                default:
                    break;
            }

            if (fragment != null) {
                FragmentManager fragmentManager = getFragmentManager();
                if(fragment instanceof Claims)
                {
                    Bundle bundle=new Bundle();
                    bundle.putString("ab","ab");
                    fragment.setArguments(bundle);
                    fragment.setArguments(bundle);
                }

                fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();

                mDrawerList.setItemChecked(position, true);
                mDrawerList.setSelection(position);
                setTitle(mNavigationDrawerItemTitles[position]);
                mDrawerLayout.closeDrawer(mDrawerList);

            } else {
                Log.e("MainActivity", "Error in creating fragment");
            }
        }
    }
S-MILE-S

MainActivity

private void selectItem(int position) {

        Fragment fragment = null;

        switch (position) {
            case 0:
                fragment=new Information();
                break;
            case 1:
                fragment=new Claims();
                Bundle bundle=new Bundle();
                bundle.putLong("ab",WorkDetails.ab);
                fragment.setArguments(bundle);
                break;

            case 2:
                fragment=new Project();
                break;

            case 3:
                fragment=new Report();
                break;

            case 4:
                fragment=new ViewView();

            default:
                break;
        }

        if (fragment != null) {
            FragmentManager fragmentManager = getFragmentManager();

            fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();

            mDrawerList.setItemChecked(position, true);
            mDrawerList.setSelection(position);
            setTitle(mNavigationDrawerItemTitles[position]);
            mDrawerLayout.closeDrawer(mDrawerList);

        } else {
            Log.e("MainActivity", "Error in creating fragment");
        }
    }
}

WorkDetails

public static long ab=-1;//this is flied ,don't put in the method



Button btn1 = (Button) findViewById(R.id.button2);
btn1.setOnClickListener(new View.OnClickListener() {
    public void onClick(View arg0) {
    AlertDialog.Builder builder = new     AlertDialog.Builder(WorkDetailsTable.this);
    builder.setTitle("Data Saved");
    builder.setMessage("Are you sure you want to save?");
            builder.setIcon(android.R.drawable.ic_dialog_alert);
            builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int ii) {
           ab = ts.insertTimeSheet(name, weather, date, status,b,i);         

}

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Navigation drawer: How to know the current selected item?

From Dev

How to hide a navigation drawer menu item programmatically?

From Dev

How to add action to a Navigation Drawer item?

From Dev

How to add a link to a navigation drawer item?

From Dev

How to select item navigation drawer from fragment

From Dev

How to add Spinner as an item in Navigation Drawer

From Dev

Navigation Drawer: How to change the colour of item category?

From Dev

Add a item to a navigation drawer

From Dev

How do I close a navigation drawer after an item is selected?

From Java

Navigation drawer: How do I set the selected item at startup?

From Dev

How to change selected Item in the navigation drawer depending on the activity/view?

From Java

How to close navigation drawer when an item is pressed from it?

From Dev

How to select the first item in a navigation drawer and open a fragment on application start

From Dev

Android: How to change the selected item in Navigation Drawer onBackPressed()?

From Dev

How to start an activity on material navigation drawer menu item clicked

From Dev

Android - How to click on an item on a navigation drawer using Espresso?

From Dev

How to add a collapsible menu item inside navigation drawer in android?

From Dev

How to add some space under the last item in a Navigation Drawer?

From Dev

How to draw a line between menu item in navigation drawer

From Dev

How do I close a navigation drawer after an item is selected?

From Dev

Android: How to change the selected item in Navigation Drawer onBackPressed()?

From Dev

How to generate Navigation Drawer item's dynamically from xml?

From Dev

How to add some space under the last item in a Navigation Drawer?

From Dev

How to draw a line between menu item in navigation drawer

From Dev

Collapsible List Item in navigation Drawer

From Dev

listview item not working in Navigation Drawer

From Dev

listview item not working in Navigation Drawer

From Dev

Navigation drawer is not closing while navigation item is selected

From Dev

Android Navigation drawer: How to change actionBarMenu according to drawer list item select

Related Related

  1. 1

    Navigation drawer: How to know the current selected item?

  2. 2

    How to hide a navigation drawer menu item programmatically?

  3. 3

    How to add action to a Navigation Drawer item?

  4. 4

    How to add a link to a navigation drawer item?

  5. 5

    How to select item navigation drawer from fragment

  6. 6

    How to add Spinner as an item in Navigation Drawer

  7. 7

    Navigation Drawer: How to change the colour of item category?

  8. 8

    Add a item to a navigation drawer

  9. 9

    How do I close a navigation drawer after an item is selected?

  10. 10

    Navigation drawer: How do I set the selected item at startup?

  11. 11

    How to change selected Item in the navigation drawer depending on the activity/view?

  12. 12

    How to close navigation drawer when an item is pressed from it?

  13. 13

    How to select the first item in a navigation drawer and open a fragment on application start

  14. 14

    Android: How to change the selected item in Navigation Drawer onBackPressed()?

  15. 15

    How to start an activity on material navigation drawer menu item clicked

  16. 16

    Android - How to click on an item on a navigation drawer using Espresso?

  17. 17

    How to add a collapsible menu item inside navigation drawer in android?

  18. 18

    How to add some space under the last item in a Navigation Drawer?

  19. 19

    How to draw a line between menu item in navigation drawer

  20. 20

    How do I close a navigation drawer after an item is selected?

  21. 21

    Android: How to change the selected item in Navigation Drawer onBackPressed()?

  22. 22

    How to generate Navigation Drawer item's dynamically from xml?

  23. 23

    How to add some space under the last item in a Navigation Drawer?

  24. 24

    How to draw a line between menu item in navigation drawer

  25. 25

    Collapsible List Item in navigation Drawer

  26. 26

    listview item not working in Navigation Drawer

  27. 27

    listview item not working in Navigation Drawer

  28. 28

    Navigation drawer is not closing while navigation item is selected

  29. 29

    Android Navigation drawer: How to change actionBarMenu according to drawer list item select

HotTag

Archive