我正在尝试用LoaderCallbacks从数据库加载数据。但不会调用loadercallbacks中的onLoadFinished函数。因此,正如您在日志中所看到的,返回的行计数为1,但列表中没有显示任何条目,也没有调用onLoadFinished。
系列化
public class SerieFragment extends SherlockListFragment implements LoaderCallbacks { private SimpleCursorAdapter adapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); String[] from = new String[] { DBContract.Episodes.NAME }; int[] to = new int[] { R.id.name }; Log.i("LoaderManager", "Starting..."); getLoaderManager().initLoader(0, null, this); adapter = new SimpleCursorAdapter(getActivity(), R.layout.serie_list_item, null, from, to, 0); this.setListAdapter(adapter); } @Override public void onViewCreated(View view, Bundle savedInstanceState) { } @Override public Loader onCreateLoader(int id, Bundle args) { Log.i("LoaderManager", "Creating loader..."); String[] projection = { DBContract.Episodes._ID, DBContract.Episodes.NAME }; CursorLoader cursorLoader = new CursorLoader(this.getActivity(), Uri.parse(SerieProvider.CONTENT_URI + "/episodes"), projection, null, null, null); return cursorLoader; } @Override public void onLoadFinished(Loader loader, Cursor cursor) { Log.i("LoaderManager", "Finished load entry... - Cursor: " + cursor.getCount()); adapter.swapCursor(cursor); } @Override public void onLoaderReset(Loader loader) { Log.i("LoaderManager", "Resetting loader..."); adapter.swapCursor(null); }
ContentProvider
public class SerieProvider extends ContentProvider { private static DatabaseHelper database; private static final String PROVIDER = "com.drizzlyday.apps.episotron.providers"; private static final String BASE_PATH = "serieprovider"; public static final Uri CONTENT_URI = Uri.parse("content://" + PROVIDER + "/" + BASE_PATH); public static final int SERIES = 1; public static final int EPISODES = 2; private static final UriMatcher uriMatcher; static { uriMatcher = new UriMatcher(UriMatcher.NO_MATCH); uriMatcher.addURI(PROVIDER, BASE_PATH, SERIES); uriMatcher.addURI(PROVIDER, BASE_PATH + "/episodes", EPISODES); } @Override public boolean onCreate() { database = new DatabaseHelper(getContext()); return false; } @Override public int delete(Uri uri, String selection, String[] selectionArgs) { // TODO Auto-generated method stub return 0; } @Override public String getType(Uri uri) { // TODO Auto-generated method stub return null; } @Override public Uri insert(Uri uri, ContentValues values) { // TODO Auto-generated method stub return null; } @Override public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder) { Log.d("Provider", uri.toString()); SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder(); int uriType = uriMatcher.match(uri); switch (uriType) { case SERIES: Log.d("Provider", "Series"); queryBuilder.setTables(DBContract.Series.TABLE_NAME); break; case EPISODES: Log.d("Provider", "Episodes"); queryBuilder.setTables(DBContract.Episodes.TABLE_NAME); break; default: throw new IllegalArgumentException("Unknown URI: " + uri); } SQLiteDatabase db = database.getReadableDatabase(); SQLiteCursor cursor = (SQLiteCursor) queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder); cursor.setNotificationUri(getContext().getContentResolver(), uri); Log.d("Provider", "Cursor: " + cursor.toString() + " - Columncount: " + cursor.getColumnCount() + " - Rowcount: " + cursor.getCount()); return cursor; } @Override public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) { // TODO Auto-generated method stub return 0; }
05-05 23:34:30.855: I/ActivityThread(31903): Pub com.drizzlyday.apps.episotron.providers: com.drizzlyday.apps.episotron.providers.SerieProvider
05-05 23:34:31.035: D/Serie(31903): New Serie fragment
05-05 23:34:31.040: I/LoaderManager(31903): Starting...
05-05 23:34:31.040: I/LoaderManager(31903): Creating loader...
05-05 23:34:31.055: D/AbsListView(31903): Get MotionRecognitionManager
05-05 23:34:31.060: D/AbsListView(31903): Get MotionRecognitionManager
05-05 23:34:31.080: D/dalvikvm(31903): GC_CONCURRENT freed 174K, 8% free 12340K/13383K, paused 2ms+2ms, total 16ms
05-05 23:34:31.090: D/Provider(31903): content://com.drizzlyday.apps.episotron.providers/serieprovider/episodes
05-05 23:34:31.090: D/Provider(31903): Episodes
05-05 23:34:31.100: V/SlidingMenu(31903): setting padding!
05-05 23:34:31.160: D/libEGL(31903): loaded /system/lib/egl/libEGL_mali.so
05-05 23:34:31.175: D/libEGL(31903): loaded /system/lib/egl/libGLESv1_CM_mali.so
05-05 23:34:31.175: D/libEGL(31903): loaded /system/lib/egl/libGLESv2_mali.so
05-05 23:34:31.180: D/(31903): Device driver API match
05-05 23:34:31.180: D/(31903): Device driver API version: 10
05-05 23:34:31.180: D/(31903): User space API version: 10
05-05 23:34:31.180: D/(31903): mali: REVISION=Linux-r2p4-02rel0 BUILD_DATE=Tue Oct 16 15:37:13 KST 2012
05-05 23:34:31.210: D/OpenGLRenderer(31903): Enabling debug mode 0
05-05 23:34:31.215: V/CustomViewBehind(31903): behind INVISIBLE
05-05 23:34:31.260: D/Provider(31903): Cursor: android.database.sqlite.SQLiteCursor@41b0df88 - Columncount: 2 - Rowcount: 1
我发现了问题所在。必须添加以下行以刷新列表的可提取状态:
this.getListView().refreshDrawableState();
我正在开发一个带有ActionBars的应用程序,它支持姜饼和其他功能。所以基本上我在使用支持库并扩展 行动B活动 对于我所有的活动。除了 onSupportNavigateUp() 方法。它只是不被调用在留档中所述。 每当用户选择从操作栏在应用程序的活动层次结构中向上导航时,就会调用此方法。 这很容易,但我一直不明白为什么它不能像预期的那样工作,谷歌也帮不上忙。这是虫子吗?还是我错过了什么?
运行playstore Build Apk时,未调用Marshmallow Runtime Permissions onRequestPermissionsResult,但正常调试Apk时运行良好。谁来帮帮我。。谢谢 OnRequestPermissionResult方法
我很难让正常工作。无论我怎么努力,我都不能让它被称为。 我的应用程序的体系结构如下所示:我的主活动包含一个片段,其中包含一个ViewPager,而ViewPager又有四个子片段实例。目前,我正在(成功地)用填充活动中的初始选项菜单,但我希望添加一些对应于每个活动子片段的额外选项。 如果有人知道这里发生了什么,我会非常感激,因为我已经被困在这个问题上两天了。 更新--我已经搞清楚了现在的问题是什么
CustomDialog 下面是http://www.theappguruz.com/blog/android-take-photo-camera-gallery-code-sample
我使用: null 我正在使用zuul和负载平衡rest模板从另一个微服务调用一个微服务: 请求到达下游服务,但未在ZullFilter中设置头(我使用了不同的头): 我还创建了一个过滤器: 我错过了什么?为什么不能调用筛选器?在我的案件中是否应该引用?
我试图发送一个意图,从一个活动中的创建启动一个意图服务。但是,IntentService的onHandleIntent永远不会被接收。我尝试过用意图过滤器改变清单,但似乎没有任何效果。没有抛出异常,但是根本没有调用IntentService。 这是onCreate 这是IntentService类的创建者和OnHandleContent,我知道它不会被调用,因为logcat从不显示“检索到的意图”
问题内容: 我有一个非常简单的Servlet和一个非常简单的HttpSessionListener: 我的方法从未被调用(没有日志输出),最终我在调用getSession()的那一行上得到一个 我尝试拨打电话时也没有问题,但存在相同的问题。 我不明白- 注释不足以调用我的侦听器吗?Eclipse甚至在下方将其显示为侦听器。 问题答案: 原来这是愚蠢的Eclipse问题之一… Project-> C
问题内容: 我正在使用创建全屏图片库。当用户旋转设备,我执行更新的内 我以模态呈现,并占据了全屏。在中,我将流程布局创建为: 我也有这样的大小: 当我旋转设备时,它永远不会被调用,这将导致无法更新。旋转设备时,确实收到消息: 我已在线阅读可以添加的内容: 到,但已经没有影响。没有任何内容或版块插图。 我也有在函数内的被调用。谁能协助我解决造成此问题的原因? 问题答案: 如果您只关心设备旋转时的布局