草庐IT

android - SQLite 查询后如何处理 Cursor?

这是我第一次使用数据库,我不太确定它是如何工作的。我创建了数据库并进行了返回游标的查询,然后……现在怎么办?究竟什么是游标?我可以只使用它来浏览我的数据,还是必须将它放入ArrayList或ListActivity或其他什么? 最佳答案 您需要迭代游标以获得结果。使用cursor.moveToFirst()和/或cursor.moveToNext()(使用while循环)。然后您可以使用getX()方法,例如cursor.getInt()或cursor.getString()。例如,您希望从您的查询中得到一个结果:if(cursor

Android 将光标从一个 EditText 移动到另一个?

我知道这类问题被问过很多次。但仍然没有人给出完美的答案。我有问题:我想从EditText1**移动到另一个**EditText2。我已经检测到editText1,但如何将光标移动到editText2。?简而言之,我必须将光标位置从一个editText1直接移动到另一个EditText2。 最佳答案 我遇到过这类问题,并找到了如下解决方案。这里我有两个editText,如果我按“a”,我的光标会移动到下一步。我使用下面的代码来完成它。finalEditTexteditText=(EditText)findViewById(R.id.e

android - 我如何从 SQLITE 数据库获取数据到 android 中的数组?

很确定这是一个简单的问题,但我对所有将游标返回的数据调整到不同View的示例感到困惑。我只想运行一个rawquery并将返回的每项数据放入一个float组(以便我以后可以将它们相加)。我需要为此使用什么?谢谢 最佳答案 当您查询数据库时,您仍然会有一个游标,但是一旦您获得了游标,您就可以对其进行迭代,将您需要的值提取到一个数组中,如下所示:DbAdapterdb=newDbAdapter(mContext);intcolumnIndex=3;//Whichevercolumnyourfloatisin.db.open();Curso

android - 如何使用游标从数据库中检索数据? (安卓,SQLite)

我卡住了。我找不到我做错了什么,所以请帮助任何人。尽管这是一项非常简单的任务,但我不明白数据库的实际情况。这是我用来将数据插入数据库表的代码:EditTexttitle=(EditText)findViewById(R.id.Title);StringTitle=title.getText().toString();EditTextd=(EditText)findViewById(R.id.director);StringDirector=d.getText().toString();SQLiteDatabasedb=openOrCreateDatabase("Films",MODE_

android - 如何获取在android中更新值的特定行

我正在使用SQLite数据库。表会不断更新,每次更新1或2行值。例如:现在TABLE1中有20行,其中一些行值已更新..我们可以知道TABLE1中的哪些行已更新吗?我有解决方案,但性能对我来说很重要。游标使用选择所有行的选择查询注册数据观察器,当有更新时,我检索具有更新值的整个20行,进行编码。所以如果有100行我需要循环所有这对低端设备来说是一项繁琐的任务。请提供解决方案,即如何使用游标在Android中检索表中的更新行。 最佳答案 如果您可以更改表,则添加一个TIMESTAMP类型的新列“modified_time”。每当更新行

android - 无法从 ContactsContract 获取电子邮件地址

我试图从ContactsContract获取电子邮件地址,但我只得到一个空字符串!姓名和电话号码可以正常使用,但电子邮件地址不行!我很困惑,几天来一直在尝试解决这个问题,但我不知道出了什么问题,如果我遗漏了代码中的某些内容或什么,我也不知道如何解决这个问题。应用程序的这一部分有一个包含ContactsContract中所有名称的ListView。在ListView中选择姓名时,代码应从ContactsContract中获取姓名、电话号码和电子邮件地址。如果能继续工作,我将不胜感激!也许有更好的方法可以解决这个问题,那么请告诉我如何改变!谢谢!由于toast消息没有出现在while循环中

android - 从sqlite数据库中获取最后一行

我正在尝试从我的SQLite数据库中获取最后一行。到目前为止,我已经尝试过max,sql_sequence但似乎没有任何效果。我必须获取行值并将其分配给类变量。感谢任何帮助,因为我是SQLite和Android的新手。谢谢.. 最佳答案 如果你已经有了cursor,那么你可以这样从cursor获取最后一条记录:cursor.moveToPosition(cursor.getCount()-1);然后使用游标读取值或这样做Cursorcursor=db.rawQuery(selectQuery,null);cursor.moveToL

android - cursor.setNotificationUri() 和 getContentResolver().notifyChange(uri,null) 之间的区别

我是android的新手,谁能告诉我cursor.setNotificationUri()和getContentResolver().notifyChange(uri,null)在实现时有什么区别内容提供商。我已经看到cursor.setNotificationUri()在query()方法中使用,同时更新或插入getContentResolver().notifyChange()被使用。我不太了解getContentResolver().notifyChange()通知解析器某些数据已更改,但cursor.setNotificationUri()做了什么?

Android SQLite 检查表是否包含行

所以我正在为Android开发游戏,目前卡在主菜单中的“加载保存游戏”按钮上。此按钮调用从数据库中读取数据并将其写入将访问此数据的资源类的方法。问题是:如果表格中没有行,我想禁用加载按钮,这意味着不存在保存游戏。为此,我使用了以下方法:publicbooleancheckForTables(){booleanhasTables;String[]column=newString[1];column[0]="Position";Cursorcursor;cursor=db.query("itemtable",column,null,null,null,null,null);if(curso

Android 应用程序不启动服务

嘿,我正在尝试在我的Android应用程序上实现一项服务。Service必须执行与Activity相同的任务。IE,如果CallLog.Calls内容提供者发生一些变化,即使应用程序没有运行,也必须通知服务并将数据插入数据库,我的意思是,应用程序启动后服务将运行,所以如果应用程序被杀死,服务将继续运行,直到操作系统停止它,对吧?因此它将在后台运行,收集CallLog.Calls服务上发生变化的所有数据。但是,该服务没有运行。我在Activity的onCreate()方法中加注星标。在服务内部,我实现了一个ContentObserver类,该类使用onChange()方法,以防CallL