title: Not an enclosing class error
body: <p>I'm trying to set the adapter but its giving me the error  not an enclosing class in my onCreateView method on below line.</p>
  
  <pre><code>CustomAdapter adapter = new CustomAdapter(SecondYearFragment.this, sub);      
  </code></pre>
  
  <p>Here is my Actvity.xml</p>
  
  <pre><code>&lt;android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/container"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  tools:context=".MainActivity"&gt;
  
  &lt;FrameLayout
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:id="@+id/content_main"&gt;
  
  &lt;/FrameLayout&gt;
  
  &lt;android.support.design.widget.BottomNavigationView
      android:id="@+id/navigation"
      android:layout_width="0dp"
      android:layout_height="wrap_content"
      android:layout_marginEnd="0dp"
      android:layout_marginStart="0dp"
      android:background="?android:attr/windowBackground"
      app:layout_constraintBottom_toBottomOf="parent"
      app:layout_constraintLeft_toLeftOf="parent"
      app:layout_constraintRight_toRightOf="parent"
      app:menu="@menu/navigation" /&gt;
  </code></pre>
  
  <p></p>
  
  <p>And here is the fragment_third_year.xml</p>
  
  <pre><code>&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  tools:context=".SecondYearFragment"&gt;
  
  &lt;ListView
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:id="@+id/listviewthird"/&gt;&lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>Here is the sec_year_dept.xml</p>
  
  <pre><code>&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"&gt;
  
  
  &lt;ImageView
      android:id="@+id/image_below"
      android:layout_width="match_parent"
      android:layout_height="150dp"
      android:src="@drawable/background_1" /&gt;
  
  &lt;TextView
      android:id="@+id/dept_name"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_alignParentTop="true"
      android:paddingBottom="@dimen/text_padding_top_bottom"
      android:paddingLeft="@dimen/text_padding_left_right"
      android:paddingRight="@dimen/text_padding_left_right"
      android:paddingTop="@dimen/text_padding_top_bottom"
      android:text="@string/app_name"
      android:textSize="@dimen/text_size"
      android:textStyle="bold" /&gt;&lt;/RelativeLayout&gt;
  </code></pre>
  
  <p>Here is the ThirdYearFragment class</p>
  
  <pre><code>public class ThirdYearFragment extends Fragment {
  private static final String ARG_PARAM1 = "param1";
  private static final String ARG_PARAM2 = "param2";
  
  ListView mListview;
  String[] sub = {"random1", "random2", "random3", };
  
  // TODO: Rename and change types of parameters
  private String mParam1;
  private String mParam2;
  
  private OnFragmentInteractionListener mListener;
  
  public ThirdYearFragment() {
      // Required empty public constructor
  }
  
  public static ThirdYearFragment newInstance(String param1, String param2) {
      ThirdYearFragment fragment = new ThirdYearFragment();
      Bundle args = new Bundle();
      args.putString(ARG_PARAM1, param1);
      args.putString(ARG_PARAM2, param2);
      fragment.setArguments(args);
      return fragment;
  }
  
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      if (getArguments() != null) {
          mParam1 = getArguments().getString(ARG_PARAM1);
          mParam2 = getArguments().getString(ARG_PARAM2);
      }
  }
  
  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container,
                           Bundle savedInstanceState) {
  
  
      // Inflate the layout for this fragment
      View view = inflater.inflate(R.layout.fragment_third_year, container, true);
  
      ListView listView = view.findViewById(R.id.listviewsecond);
      CustomAdapter adapter = new CustomAdapter(SecondYearFragment.this, sub);
      listView.setAdapter(adapter);
      return view;
  } }
  </code></pre>
  
  <p>And here is my custom adapter</p>
  
  <pre><code>public  class CustomAdapter extends ArrayAdapter&lt;String&gt; {
  String[] subjects;
  Context mContext;
  
  public CustomAdapter(@NonNull Context context, String[] subjects) {
      super(context, R.layout.sec_year_dept);
      this.subjects = subjects;
      this.mContext = context;
  }
  
  @Override
  public int getCount() {
      return subjects.length;   //returns the size of the list
  }
  
  @NonNull
  @Override
  public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
      ViewHolder mViewHolder = new ViewHolder();
      if(convertView == null) {
          LayoutInflater mInflator = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
          convertView = mInflator.inflate(R.layout.sec_year_dept, parent, false);
          mViewHolder.mSubjects = (TextView) convertView.findViewById(R.id.dept_name);
          mViewHolder.mSubjects.setText(subjects[position]);
          convertView.setTag(mViewHolder);
      }else {
          mViewHolder = (ViewHolder) convertView.getTag();
      }
      return convertView;
  }
  static class ViewHolder {
      TextView mSubjects;
  }}
  </code></pre>
  
  <p>Can someone please explain me what is going on and what am i missing? </p>