Some tweaks to the loader API demo.

Unfinished, but checkpointing.

Change-Id: Ib832a6915847302e8bbb23c6cf111c932fdacabf
This commit is contained in:
Dianne Hackborn
2010-08-05 18:20:35 -07:00
parent 46e70551eb
commit d21c55665c
4 changed files with 37 additions and 3 deletions

View File

@@ -254,6 +254,7 @@
<activity android:name=".app.FragmentLayout$DialogActivity" /> <activity android:name=".app.FragmentLayout$DialogActivity" />
<activity android:name=".app.FragmentListCursorLoader" <activity android:name=".app.FragmentListCursorLoader"
android:theme="@android:style/Theme.WithActionBar"
android:label="@string/fragment_list_cursor_loader"> android:label="@string/fragment_list_cursor_loader">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
@@ -270,6 +271,7 @@
</activity> </activity>
<activity android:name=".app.FragmentMenu" <activity android:name=".app.FragmentMenu"
android:theme="@android:style/Theme.WithActionBar"
android:label="@string/fragment_menu"> android:label="@string/fragment_menu">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -16,16 +16,23 @@
package com.example.android.apis.app; package com.example.android.apis.app;
import com.example.android.apis.R;
import android.app.Activity; import android.app.Activity;
import android.app.ListFragment; import android.app.ListFragment;
import android.app.LoaderManager; import android.app.LoaderManager;
import android.content.Context;
import android.content.CursorLoader; import android.content.CursorLoader;
import android.content.Loader; import android.content.Loader;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
import android.provider.ContactsContract.Contacts; import android.provider.ContactsContract.Contacts;
import android.util.Log; import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View; import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.ListAdapter; import android.widget.ListAdapter;
import android.widget.ListView; import android.widget.ListView;
import android.widget.SimpleCursorAdapter; import android.widget.SimpleCursorAdapter;
@@ -49,6 +56,8 @@ public class FragmentListCursorLoader extends Activity {
public static class CursorLoaderListFragment extends ListFragment public static class CursorLoaderListFragment extends ListFragment
implements LoaderManager.LoaderCallbacks<Cursor> { implements LoaderManager.LoaderCallbacks<Cursor> {
MenuItem mSearchMenu;
@Override @Override
public void onActivityCreated(Bundle savedInstanceState) { public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState); super.onActivityCreated(savedInstanceState);
@@ -57,11 +66,33 @@ public class FragmentListCursorLoader extends Activity {
// application this would come from a resource. // application this would come from a resource.
setEmptyText("No phone numbers"); setEmptyText("No phone numbers");
// We have a menu item to show in action bar.
setHasOptionsMenu(true);
// Prepare the loader. Either re-connect with an existing one, // Prepare the loader. Either re-connect with an existing one,
// or start a new one. // or start a new one.
getLoaderManager().initLoader(0, null, this); getLoaderManager().initLoader(0, null, this);
} }
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
mSearchMenu = menu.add("Search");
mSearchMenu.setIcon(R.drawable.magnifying_glass);
mSearchMenu.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item == mSearchMenu) {
InputMethodManager imm = (InputMethodManager)getActivity()
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(getActivity().getCurrentFocus(), 0);
return true;
} else {
return super.onOptionsItemSelected(item);
}
}
@Override @Override
public void onListItemClick(ListView l, View v, int position, long id) { public void onListItemClick(ListView l, View v, int position, long id) {
Log.i("FragmentComplexList", "Item clicked: " + id); Log.i("FragmentComplexList", "Item clicked: " + id);

View File

@@ -8,6 +8,7 @@ import android.app.FragmentTransaction;
import android.os.Bundle; import android.os.Bundle;
import android.view.Menu; import android.view.Menu;
import android.view.MenuInflater; import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View; import android.view.View;
import android.view.View.OnClickListener; import android.view.View.OnClickListener;
import android.widget.CheckBox; import android.widget.CheckBox;
@@ -89,8 +90,8 @@ public class FragmentMenu extends Activity {
@Override @Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
menu.add("Menu 1a"); menu.add("Menu 1a").setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
menu.add("Menu 1b"); menu.add("Menu 1b").setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
} }
} }
@@ -107,7 +108,7 @@ public class FragmentMenu extends Activity {
@Override @Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
menu.add("Menu 2"); menu.add("Menu 2").setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
} }
} }
} }