title: Class not found exception in Android code
body: <p>This is my code: </p>
  
  <pre><code>package com.example.testcode;
  
  import android.app.ListFragment;
  import android.app.LoaderManager;
  import android.content.CursorLoader;
  import android.content.Loader;
  import android.database.Cursor;
  import android.net.Uri;
  import android.os.Bundle;
  import android.provider.ContactsContract;
  import android.support.v4.widget.SimpleCursorAdapter;
  import android.text.TextUtils;
  import android.view.LayoutInflater;
  import android.view.Menu;
  import android.view.MenuInflater;
  import android.view.MenuItem;
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.ListView;
  import android.widget.SearchView;
  import android.widget.SearchView.OnQueryTextListener;
  
  
  public class TestAndActivity extends ListFragment implements OnQueryTextListener,
          LoaderManager.LoaderCallbacks&lt;Cursor&gt; {
  
  
  
  
  
  
  
      // This is the Adapter being used to display the list's data.
      SimpleCursorAdapter mAdapter;
  
      // If non-null, this is the current filter the user has provided.
      String mCurFilter;
  
  
  
  
      @Override
      public void  onActivityCreated(Bundle savedInstanceState) {
          super .onActivityCreated(savedInstanceState);
  
          // Give some text to display if there is no data.  In a real
          // application this would come from a resource.
          setEmptyText("No phone numbers");
  
          // We have a menu item to show in action bar.
          setHasOptionsMenu(true);
  
          // Create an empty adapter we will use to display the loaded data.
          mAdapter = new SimpleCursorAdapter(getActivity(),
                  android.R.layout.simple_list_item_2, null,
                  new String[] { ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts.CONTACT_STATUS },
                  new int[] { android.R.id.text1, android.R.id.text2 }, 0);
          setListAdapter(mAdapter);
  
          // Start out with a progress indicator.
          setListShown(false);
  
          // Prepare the loader.  Either re-connect with an existing one,
          // or start a new one.
          getLoaderManager().initLoader(0, null, this);
      }
  
      @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
   // Inflate the layout for this fragment 
          final View contentView = inflater.inflate(R.layout.fragment_layout, container, false); return contentView; }
  
  
      @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
          // Place an action bar item for searching.
          MenuItem item = menu.add("Search");
          //item.setIcon(android.R.drawable.ic_menu_search);
          item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
          SearchView sv = new SearchView(getActivity());
          sv.setOnQueryTextListener(this);
          item.setActionView(sv);
      }
  
      public boolean onQueryTextChange(String newText) {
          // Called when the action bar search text has changed.  Update
          // the search filter, and restart the loader to do a new query
          // with this filter.
          mCurFilter = !TextUtils.isEmpty(newText) ? newText : null;
          getLoaderManager().restartLoader(0, null, this);
          return true;
      }
  
      @Override public boolean onQueryTextSubmit(String query) {
          // Don't care about this.
          return true;
      }
  
      @Override public void onListItemClick(ListView l, View v, int position, long id) {
          // Insert desired behavior here.
  
  
      }
  
      // These are the Contacts rows that we will retrieve.
      static final String[] CONTACTS_SUMMARY_PROJECTION = new String[] {
          ContactsContract.Contacts._ID,
          ContactsContract.Contacts.DISPLAY_NAME,
          ContactsContract.Contacts.CONTACT_STATUS,
          ContactsContract.Contacts.CONTACT_PRESENCE,
          ContactsContract.Contacts.PHOTO_ID,
          ContactsContract.Contacts.LOOKUP_KEY,
      };
  
      public Loader&lt;Cursor&gt; onCreateLoader(int id, Bundle args) {
          // This is called when a new Loader needs to be created.  This
          // sample only has one Loader, so we don't care about the ID.
          // First, pick the base URI to use depending on whether we are
          // currently filtering.
          Uri baseUri;
          if (mCurFilter != null) {
              baseUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_FILTER_URI,
                      Uri.encode(mCurFilter));
          } else {
              baseUri = ContactsContract.Contacts.CONTENT_URI;
          }
  
          // Now create and return a CursorLoader that will take care of
          // creating a Cursor for the data being displayed.
          String select = "((" + ContactsContract.Contacts.DISPLAY_NAME + " NOTNULL) AND ("
                  + ContactsContract.Contacts.HAS_PHONE_NUMBER + "=1) AND ("
                  + ContactsContract.Contacts.DISPLAY_NAME + " != '' ))";
          return new CursorLoader(getActivity(), baseUri,
                  CONTACTS_SUMMARY_PROJECTION, select, null,
                  ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC");
      }
  
      public void onLoadFinished(Loader&lt;Cursor&gt; loader, Cursor data) {
          // Swap the new cursor in.  (The framework will take care of closing the
          // old cursor once we return.)
          mAdapter.swapCursor(data);
  
          // The list should now be shown.
          if (isResumed()) {
              setListShown(true);
          } else {
              setListShownNoAnimation(true);
          }
      }
  
      public void onLoaderReset(Loader&lt;Cursor&gt; loader) {
          // This is called when the last Cursor provided to onLoadFinished()
          // above is about to be closed.  We need to make sure we are no
          // longer using it.
          mAdapter.swapCursor(null);
      }
  }
  **strong text**
  </code></pre>
  
  <p>This is my layout:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="horizontal"
          android:layout_width="match_parent"
          android:layout_height="match_parent"&gt;
  
      &lt;fragment class="com.example.testcode.TestAndActivity"
              android:id="@+id/titles" android:layout_weight="1"
              android:layout_width="0px"
              android:layout_height="match_parent" /&gt;
  
      &lt;FrameLayout android:id="@+id/details" android:layout_weight="1"
              android:layout_width="0px"
              android:layout_height="match_parent" /&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>This is my manifest:</p>
  
  <pre><code>**&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.testcode"
      android:versionCode="1"
      android:versionName="1.0" &gt;
  
  
      &lt;uses-permission android:name="android.permission.READ_CONTACTS"/&gt;
      &lt;uses-sdk android:minSdkVersion="15" /&gt;
  
      &lt;application
  
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name" &gt;
  
           &lt;activity android:label="@string/app_name"
                android:name="android.app.TestAndActivity"&gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="android.intent.action.MAIN" /&gt;
  
                  &lt;category android:name="android.intent.category.LAUNCHER" /&gt;
              &lt;/intent-filter&gt;
          &lt;/activity&gt;
  
  
      &lt;/application&gt;
  
  &lt;/manifest&gt;**
  </code></pre>
  
  <p>The error I get is this: </p>
  
  <pre><code>   01-24 22:50:49.751: E/AndroidRuntime(1416): Caused by: java.lang.ClassNotFoundException: android.app.TestAndActivity
  </code></pre>
  
  <p>I am using fragments and loaders for the first time. Though, code has no errors, I believe I got it wrong in both the manifest and layout. </p>
  
  <p>Can anyone tell me where I went wrong?
   **</p>
  
  <blockquote>
    <p>Edit:</p>
  </blockquote>
  
  <p>** </p>
  
  <pre><code>If I change android.app.TestAndActivity to .TestAndActivity, I get the error can not cast TestAndActivity to android.app. 
  </code></pre>