Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6634941
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 25, 20262026-05-25T22:59:25+00:00 2026-05-25T22:59:25+00:00

For school I am making an android app. For this app I have a

  • 0

For school I am making an android app. For this app I have a fragment, which shows a gridview with just strings, from a database. For this I need a fragment. When I call getActivity(), it returns null. The onAttach method, as suggested here doesn’t get called before the app crashes. How should I solve this?
weekFragmetn.xml:

package nl.siebeh.schoolmate;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.GridView;

public class weekFragment extends Fragment {
    dbLayer db;
    Context mContext;

    @Override
    public void onAttach(Activity activity) {
        mContext = getActivity();
        Log.i("Schoolmate","onAttach called");
        super.onAttach(activity);
    }

    public weekFragment newInstance(String title) {
        Log.i("Schoolmate","newInstance called");
        db = new dbLayer(mContext);
        weekFragment fragment = new weekFragment();
        ArrayList<ArrayList<Object>> result = null;

        if(title == "leraren"){
            result = db.getAllRowsAsArrays("weekTeacher", null);
        }else if(title == "locatie"){
            result = db.getAllRowsAsArrays("weekLocation", null);
        }else if(title == "vakken"){
            result = db.getAllRowsAsArrays("weekSubjects", null);
        }

        String[] array = new String[60];

        for(int i = 0; i < 60; i++){
            array[i] = "";
        }

        array[1] = getResources().getStringArray(R.array.days)[0];
        array[2] = getResources().getStringArray(R.array.days)[1];
        array[3] = getResources().getStringArray(R.array.days)[2];
        array[4] = getResources().getStringArray(R.array.days)[3];
        array[5] = getResources().getStringArray(R.array.days)[4];

        for(int i = 1; i < 10; i++){
            array[i] = Integer.toString(i);
        }

        for(int position = 0; position < result.size(); position++){
            ArrayList<Object> row = result.get(position);
            int hour = Integer.valueOf(row.get(1).toString()).intValue();
            int day =  Integer.valueOf(row.get(0).toString()).intValue();
            int pos = 6 * hour + day;
            array[pos] = row.get(position).toString();
        }
        fragment.mContent = array;

        return fragment;
    }

    private String[] mContent = {""};

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        if (container == null) {
            return null;
        }
        View v = inflater.inflate(R.layout.week_fragment, container, false);
        GridView gridview = (GridView) v.findViewById(R.id.gridview);
        gridview.setAdapter(new weekAdapter(mContext, mContent));
        return gridview;
    }

    @Override
    public boolean onContextItemSelected(MenuItem item) {
        return super.onContextItemSelected(item);
    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
    }



}

logcat: (since click on the item the item in a list that starts the activity, where the fragment is started/embedded)

    09-29 19:10:56.611: INFO/ActivityManager(70): Starting: Intent { cmp=nl.siebeh.schoolmate/.overviewWeek } from pid 536
09-29 19:10:56.970: INFO/Schoolmate(536): newInstance called
09-29 19:11:06.631: WARN/ActivityManager(70): Launch timeout has expired, giving up wake lock!
09-29 19:11:06.671: WARN/ActivityManager(70): Activity idle timeout for HistoryRecord{40770188 nl.siebeh.schoolmate/.overviewWeek}
09-29 19:12:20.661: DEBUG/SntpClient(70): request time failed: java.net.SocketException: Address family not supported by protocol
09-29 19:14:11.811: DEBUG/dalvikvm(536): Debugger has detached; object registry had 413 entries
09-29 19:14:11.811: ERROR/SchoolMate(536): java.lang.NullPointerException
09-29 19:14:11.811: INFO/SchoolMate(536): Context is null
09-29 19:14:11.820: WARN/System.err(536): java.lang.NullPointerException
09-29 19:14:11.820: WARN/System.err(536):     at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:118)
09-29 19:14:11.820: WARN/System.err(536):     at nl.siebeh.schoolmate.dbLayer.<init>(dbLayer.java:50)
09-29 19:14:11.820: WARN/System.err(536):     at nl.siebeh.schoolmate.weekFragment.newInstance(weekFragment.java:31)
09-29 19:14:11.820: WARN/System.err(536):     at nl.siebeh.schoolmate.fragmentAdapter.getItem(fragmentAdaptar.java:21)
09-29 19:14:11.820: WARN/System.err(536):     at nl.siebeh.schoolmate.titleFragmentAdapter.getItem(titleFragmentAdapter.java:1)
09-29 19:14:11.820: WARN/System.err(536):     at android.support.v4.app.FragmentPagerAdapter.instantiateItem(FragmentPagerAdapter.java:62)
09-29 19:14:11.820: WARN/System.err(536):     at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:321)
09-29 19:14:11.820: WARN/System.err(536):     at android.support.v4.view.ViewPager.populate(ViewPager.java:441)
09-29 19:14:11.820: WARN/System.err(536):     at android.support.v4.view.ViewPager.onAttachedToWindow(ViewPager.java:563)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.View.dispatchAttachedToWindow(View.java:6156)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1122)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.820: WARN/System.err(536):     at android.view.ViewRoot.performTraversals(ViewRoot.java:765)
09-29 19:14:11.830: WARN/System.err(536):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1859)
09-29 19:14:11.840: WARN/System.err(536):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-29 19:14:11.840: WARN/System.err(536):     at android.os.Looper.loop(Looper.java:123)
09-29 19:14:11.840: WARN/System.err(536):     at android.app.ActivityThread.main(ActivityThread.java:3683)
09-29 19:14:11.840: WARN/System.err(536):     at java.lang.reflect.Method.invokeNative(Native Method)
09-29 19:14:11.840: WARN/System.err(536):     at java.lang.reflect.Method.invoke(Method.java:507)
09-29 19:14:11.850: WARN/System.err(536):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
09-29 19:14:11.850: WARN/System.err(536):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
09-29 19:14:11.850: WARN/System.err(536):     at dalvik.system.NativeStart.main(Native Method)
09-29 19:14:11.850: DEBUG/AndroidRuntime(536): Shutting down VM
09-29 19:14:11.850: WARN/dalvikvm(536): threadid=1: thread exiting with uncaught exception (group=0x40015560)
09-29 19:14:11.870: ERROR/AndroidRuntime(536): FATAL EXCEPTION: main
09-29 19:14:11.870: ERROR/AndroidRuntime(536): java.lang.NullPointerException
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at nl.siebeh.schoolmate.weekFragment.newInstance(weekFragment.java:49)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at nl.siebeh.schoolmate.fragmentAdapter.getItem(fragmentAdaptar.java:21)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at nl.siebeh.schoolmate.titleFragmentAdapter.getItem(titleFragmentAdapter.java:1)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.support.v4.app.FragmentPagerAdapter.instantiateItem(FragmentPagerAdapter.java:62)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:321)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.support.v4.view.ViewPager.populate(ViewPager.java:441)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.support.v4.view.ViewPager.onAttachedToWindow(ViewPager.java:563)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.View.dispatchAttachedToWindow(View.java:6156)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1122)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewRoot.performTraversals(ViewRoot.java:765)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1859)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.os.Looper.loop(Looper.java:123)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at android.app.ActivityThread.main(ActivityThread.java:3683)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at java.lang.reflect.Method.invokeNative(Native Method)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at java.lang.reflect.Method.invoke(Method.java:507)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
09-29 19:14:11.870: ERROR/AndroidRuntime(536):     at dalvik.system.NativeStart.main(Native Method)
09-29 19:14:11.890: WARN/ActivityManager(70):   Force finishing activity nl.siebeh.schoolmate/.overviewWeek
09-29 19:14:12.413: WARN/ActivityManager(70): Activity pause timeout for HistoryRecord{40770188 nl.siebeh.schoolmate/.overviewWeek}
09-29 19:14:21.910: WARN/ActivityManager(70): Launch timeout has expired, giving up wake lock!
09-29 19:14:22.441: WARN/ActivityManager(70): Activity idle timeout for HistoryRecord{4070c7a0 nl.siebeh.schoolmate/.schoolmate}
09-29 19:14:32.451: WARN/ActivityManager(70): Activity destroy timeout for HistoryRecord{40770188 nl.siebeh.schoolmate/.overviewWeek}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-25T22:59:26+00:00Added an answer on May 25, 2026 at 10:59 pm

    You do not have a getActivity() call, which makes it difficult to answer the question.

    You are getting a NullPointerException because mContext is null. My guess is that mContext is null because, in the code to fragmentAdapter, you are calling new weekFragment(), then calling newInstance() on it. You presumably thought you were following some patterns outlined in the Fragment JavaDocs, but in there, newInstance() is a static method, not an instance method as you have it here.

    Take just about all of the code out of newInstance() and move it to onActivityCreated() or some time when the fragment is attached to the activity so getActivity() works. Along the way, delete your onAttach() implementation and the mContext data member, neither of which are needed (and the mContext is populated in a very scary way).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have this school project I'm making, where I need to make my code
For school I'm making this website which is a look-a-like of twitter. Now I
I have an application which communicates with a database. Each table has a unique
I am making an app for school and I would love to change the
I have been working on an app for my school recently and wanted to
This might sound stupid, but I'm seriously a newbie at Android programming. I have
I have been wondering about this, which is why I have put off learning
I'm making an application with a database of courses (of school) that the user
I am making an app for my school. We are on a 7 day
I am a high school student and am thinking of making a robot that

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.