【发布时间】:2016-09-22 22:12:09
【问题描述】:
我无法使任何解决方案发挥作用...结果始终是应用程序崩溃。我成功地制作了一个 listView,添加了项目并获得了选定的项目,但我错过了将列表中的元素设为联系人姓名而不是随机姓名。
一旦被选中,我会询问号码并在另一个活动中将它们PutExtra。
编辑:按照建议,这是我正在尝试使用的代码:
Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null, null);
while (phones.moveToNext())
{
String name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
}
phones.close();
我会将它插入到每个联系人的 for 循环中,每次将字符串 name 和 phoneNumber 添加到 ArrayList。但是,当我按下应该运行此代码的按钮(并且该按钮工作正常)时,我会从 Android 监视器中得到一长串错误(这是第一行):
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not execute method for android:onClick
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293)
我已将权限添加到清单中:
<uses-permission android:name="android.permission.READ_CONTACTS" />
你能帮帮我吗?谢谢!
附:我已经尝试了来自this previus 主题的多种解决方案,但它们都不适合我......
【问题讨论】:
-
SO 不是代码编写服务。如果您想在问题中包含您编写代码的尝试以及遇到的错误,我相信这里有人会很乐意提供帮助。
-
在此期间,请使用Tour 并阅读Help Center 中的文档。特别是,您应该在 SO 阅读有关 how to ask a good question 以及 on topic 的哪些类型的问题。您可能还会发现StackOverflow question checklist 非常有用。
-
与其解释您已搜索解决方案并直接要求代码,不如提供您的错误和您拥有的代码。我已经编辑了您的帖子,但“没有任何效果,我的应用程序崩溃”不是问题。
-
感谢您的编辑和澄清,这是我的第一篇文章,所以请给我一些时间来适应 SO 的工作方式。我将更新我的帖子添加代码和错误。谢谢!
标签: android arraylist android-contacts contactscontract