получить позицию элемента базы данных из представления не в виде списка? - PullRequest
0 голосов
/ 14 марта 2012

У меня есть представления, которые показывают информацию из базы данных, используя метод получения курсора. То, что я хочу знать, - это как получить идентификатор позиции, как вы бы это делали при просмотре списка. у них есть AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo () ;, item является MenuItem, тип метода, проблема в том, что он не работает в обычном представлении. Существует ли метод, аналогичный AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo (); только для обычного просмотра?

Редактировать

log cat

03-14 08:55:43.738: E/AndroidRuntime(11177): FATAL EXCEPTION: main
03-14 08:55:43.738: E/AndroidRuntime(11177): java.lang.NullPointerException
03-14 08:55:43.738: E/AndroidRuntime(11177):    at www.theapp.co.hours.html.ViewHours.onClick(ViewHours.java:6041)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.view.View.performClick(View.java:2408)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.view.View$PerformClick.run(View.java:8816)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.os.Handler.handleCallback(Handler.java:587)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.os.Handler.dispatchMessage(Handler.java:92)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.os.Looper.loop(Looper.java:123)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at android.app.ActivityThread.main(ActivityThread.java:4627)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at java.lang.reflect.Method.invokeNative(Native Method)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at java.lang.reflect.Method.invoke(Method.java:521)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
03-14 08:55:43.738: E/AndroidRuntime(11177):    at dalvik.system.NativeStart.main(Native Method)

1 Ответ

1 голос
/ 14 марта 2012

Есть ли метод, аналогичный AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo (); только для обычного просмотра?

Нет. Если, скажем, вы решили добавить Cursor данных в TextView, вам необходимо отследить, какую позицию или _id вы использовали сами. В конце концов, вы были теми, кто выбрал какую позицию или _id для перехода - Android не может знать, заполняете ли вы TextView из Cursor или что-то еще.

...