安卓。以列表视图显示联系人

2024-03-07

我想在列表视图中显示联系人,并对所有联系人添加操作,例如单击特定联系人,它应该显示电话号码、邮件 ID 和删除特定联系人...

import android.app.ListActivity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class CPDemo1 extends ListActivity {


    @SuppressWarnings("unchecked")
 public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
     String str[]=    {"datta","vivek","Nagesh sir","shiv"};
     String name; 

        ContentResolver cr = getContentResolver();
        Cursor cursor = cr.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
        int nameIdx = cursor.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME);

        if (cursor.moveToFirst())


         do {

         int x = 0;

         name = cursor.getString(nameIdx);
         str[x]= name;
                 x++;
          ArrayAdapter arr = new ArrayAdapter(this, android.R.layout.simple_list_item_1,str);

          setListAdapter(arr);
 } while(cursor.moveToNext());

        }

当前代码中的问题是为每个循环创建新的适配器。只要移动ArrayAdapter arr = new ArrayAdapter(this, android.R.layout.simple_list_item_1,str); out of do while loop。还有一个问题,你工作太多了UIThread(循环光标)因此,如果您的联系人数量很大,用户将看到黑屏或 ANR。学会使用AsyncQueryHandler and CursorAdapter,全部在我的链接和 nikki 的链接中

And why don't you have a look at default Contacts app in Android source code: Below is my custom Contacts App.enter image description here

https://github.com/android/platform_packages_apps_contacts https://github.com/android/platform_packages_apps_contacts

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安卓。以列表视图显示联系人 的相关文章

  • 如何使用 kotlin Android 从 Url 读取 JSON?

    我正在使用 kotlin 来开发应用程序 现在我想从服务器获取 JSON 数据 在java中 我实现了Asyntask以及Rxjava来从Url读取JSON 我也在谷歌搜索 但我无法获得满足我的要求的正确详细信息 如何使用 kotlin 从
  • 使用 ActiveAndroid 库存储 HashMap

    我有一堂课 Table name Control public class Control extends Model Column private String name Column private Map
  • Android Studio Beta 频道、Android Studio Canary 频道、Android Studio Dev 频道有什么区别? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我是 android 新手 想知道要安装哪个 studio Android Studio Beta 频道 Android Studio Ca
  • android ndk 多点触控?

    我正在编写一个仅使用本机代码的应用程序 那么ndk中是否可以获取多点触控事件呢 我感觉我已经搜索了整个网络 但什么也没找到 有谁知道如何做到这一点 是的 您可以检查名为native activity查看如何获取输入事件 寻找engine h
  • 使用 setText 更改文本后如何更新屏幕?

    现在我正在使用以下代码来更新TextView txtMain setText new text 该代码执行后 屏幕不会更新新文本 有没有办法可以强制文本立即更新 该代码执行后 屏幕不会更新新文本 一旦您将控制权归还给 Android 就应该
  • 如何调试“com.android.okhttp”

    在android kitkat中 URLConnection的实现已经被OkHttp取代 如何调试呢 OkHttp 位于此目录中 external okhttp android main java com squareup okhttp 当
  • 在 android studio 中找不到 SDK 位置

    我刚刚在 android studio 中导入了我的 eclipse 项目 我一直这么说 Error SDK location not found Define location with sdk dir in the local prop
  • 表面视图+gl表面视图+框架布局

    我是 java 和 OpenGL 的新手 我正在尝试获得一个相机预览屏幕 能够 同时显示 3D 对象 浏览完样本后 api 演示 我想结合示例的代码 api 演示就足够了 但不知何故它不起作用 迫使我 启动时关闭 错误被称为空指针 例外 有
  • 如何将设备屏幕位置转换为发送事件位置?

    我知道关于input tap x yshell 命令 但是 我想了解如何 使用执行单击sendevent命令 我能够通过以下命令实现它 sendevent dev input event5 3 53 X sendevent dev inpu
  • 如何使用 Retrofit 解析嵌套 json....?

    我不知道该怎么办使用 Retrofit 解析 json 熟悉使用 Retrofit 解析简单的 json 但不熟悉解析嵌套Json using Retrofit 这是我的 Json 数据 current observation image
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • Jetpack Compose 中复选框中的透明复选标记

    在我的 Compose 应用程序中 我需要创建一个圆形复选框 我已经通过下面的代码实现了这一点 Composable fun CircleCheckBox isChecked Boolean modifier Modifier Modifi
  • 蓝牙发送和接收文本数据

    我是 Android 开发新手 我想制作一个使用蓝牙发送和接收文本的应用程序 我得到了有关发送文本的所有内容逻辑工作 但是当我尝试在手机中测试它时 我看不到界面 这是Main Activity Code import android sup
  • Android 4.4 Kitkat 自定义视图操作栏未填充整个宽度

    我试图拥有一个带有自定义视图的简单操作栏 但我得到以下结果 为了演示 我创建了一个带有黄色背景颜色的简单 xml 它应该占据整个宽度 这是 XML
  • Android Studio代理设置构建错误

    每当我尝试在 Android Studio 中构建应用程序时 都会收到以下错误 Error 169 254 16 169 254 16 Will ignore proxy settings for these hosts 我收到错误 5 次
  • 找不到数据库路径是不可能的

    我对 android 开发很陌生 现在我正在尝试通过扩展 SQLiteOpenHelper 的类创建数据库 我确信数据存储在我的 Nexus 7 我用来测试应用程序的设备 上的某个位置 但是我找不到数据库的路径 我四处寻找其他类似的问题 所
  • Android:分配内存失败

    我正在尝试创建一个具有 2047 mb 内存的模拟器 当我运行它时 我收到此错误 2011 02 22 14 24 14 Emulator 2011 02 22 14 24 14 Emulator This application has
  • Activity 暂停时调用 FragmentManager.popBackStack 是否安全

    的文档FragmentManager popBackStack https developer android com reference android app FragmentManager html popBackStack java
  • ARM Chromebook 上的 Android 开发环境?

    我尝试了多次安装和使用安卓工作室 https developer android com studio index html on an ARM Chromebook C100P https archlinuxarm org platfor
  • Keystore getEntry 在 Android 9 上返回 NULL

    c我已对存储在 Android 密钥库中的登录密码进行了加密和解密 在 Android 9 上 我观察到应用程序在尝试解密密码时崩溃 我无法重现它 但拥有 Pixel 3 的用户是崩溃的设备之一 下面是我如何从密钥库解密密码 private

随机推荐

  • 为什么需要将AD服务器包含在“userWorkstations”中?

    将 Java 应用程序连接到 AD 服务器时 出现以下错误 javax naming AuthenticationException LDAP error code 49 80090308 LdapErr DSID 0C0903A9 com
  • 浮点乘法性能不一致

    在测试 NET 中浮点数的性能时 我偶然发现了一个奇怪的情况 对于某些值 乘法似乎比正常情况慢得多 这是测试用例 using System using System Diagnostics namespace NumericPerfTest
  • 如何在 2D 中的 2 个点之间创建一条曲线并获取每隔 d 距离形成该曲线的点?

    我数学不好 我有2点 A x1 y1 and B x2 y2 in 2D 我需要从点创建一条虚拟路径A to B在 R 半径 处弯曲 然后返回描述该弯曲路径的点数组 并非所有点都彼此相距 D 距离 在Java中我需要这样的方法 privat
  • 如何在 CreateEvent 的 SDDL 字符串中添加同步权

    我的 Windows 服务使用 CreateEvent 创建 2 个事件 以便与用户应用程序进行通信 该服务和用户应用程序不在同一用户帐户下运行 用户应用程序打开事件并将其设置为有信号 不会出现错误 但该服务从未收到该事件 另一个事件的作用
  • 如何在本地主机上启用网站共享?

    我尝试使 loclhost 上的网站能够从其他计算机访问 但我找不到方法来执行此操作 我尝试将共享添加到 Internet 访客帐户 但这也不起作用 我只是无法强制它允许从我的另一台计算机进行访问 替代文本http img162 image
  • 加密密码 php 的最佳方法(2017 年)[重复]

    这个问题在这里已经有答案了 在我的网站中我使用md5在我的数据库中加密密码用户 并存储会话用户 pswUser md5 POST password 但我刚刚被告知这种加密方式已经过时了 我做了一些研究来找出如何做到这一点 但大多数帖子都是两
  • Spring 4 AbstractWebSocketMessageBrokerConfigurer 与 SockJS 无法正确协商传输

    所以我必须说 所有的 websocket 教程 示例看起来都很简单 但似乎您确实必须深入挖掘才能找到简单示例中遗漏的真正重要的信息 我的 web 应用程序在前端使用 Spring 4 Stomp 消息代理和 SockJS 时仍然遇到很多问题
  • Express JS 在请求上使用异步函数

    app use async function req res next try var myres await new Promise resolve reject gt mysql connection query select from
  • std::enable_if 用于两种不同方法的实现(4种不同情况)

    我需要为 const 和非常量类型实现两种不同的方法 我已经设法编写了工作代码 但我不明白为什么它的某些风格可以 而有些则不行 这是简化的示例 我想知道为什么 1 有效但 2 无效 对于 3 和 4 也是如此 include
  • Android 使用 saxparser 解析 xml

    我正在尝试在 Android 上使用 SaxParser 解析 xml 文件 这是我的 xml 文件
  • MongoDb 中的增量矩阵结构

    我想要一个矩阵结构 一个 NxN 整数矩阵 并且我想增加其中的值 在 MongoDb 中对矩阵进行建模并增加其值的正确方法是什么 让我们考虑一下我们有 1 2 3 4 5 6 7 8 9 您可以通过不同的方式将矩阵存储为 mongodb 中
  • 为什么我的 Button 看起来像是 1990 年的?

    我正在编写一个 Windows GUI 应用程序 并且需要一个普通的按钮 我正在使用此代码来生成按钮 hwnd CreateWindowEx NULL BUTTON Button WS VISIBLE WS CHILD BS PUSHBUT
  • MySQL:基于另一个字段添加序列列

    我正在处理一些遗留代码 数据库 并且需要向数据库添加一个字段 该字段将记录与该 外国 id 相关的序列号 示例表数据 当前 ID ACCOUNT some other stuff 1 1 2 1 3 1 4 2 5 2 6 1 我需要添加一
  • 使用 Qt 显示图像流

    当前的解决方案如下所示 paintlabel h class PaintLabel public QWidget Q OBJECT public explicit PaintLabel QWidget parent 0 public slo
  • JavaScript concat 没有按预期工作,介意详细说明吗?

    因此 我有一个包含国家 地区名称作为键的对象 值是包含一些城市的数组 我想将所有城市放在一个数组中 而不包含国家 地区 这是我的做法 但不明白为什么它不起作用 var cities United Kingdom london Spain i
  • 升级到 Xcode 9 后,cordova 应用程序将无法构建,错误 70,需要配置文件

    昨天我们从 xcode 8 3 2 升级到版本 9 现在我们的企业发行版 apache cordova ios 应用程序拒绝构建 2017 09 21 07 37 16 787 xcodebuild 70400 217569 MT IDED
  • 如何获取我的代码的结束地址

    我正在为一个课程项目从头开始编写一个实时操作系统 在将代码下载到芯片后 我想知道代码的结束地址 因为我计划将空闲内存用于堆栈空间 并且需要确保不会覆盖现有代码 我听说 GCC 提供的 end 变量是代码的结尾 但我不知道 end 的含义是什
  • 在后台运行时像 Pastebot 一样抓取 UIPasteboard

    我知道这是可能的 因为 Tapbots Pastebot 就是这么做的 我试图在我的 iPhone 应用程序在后台运行时抓取 UIPasteboard 并将其添加到 UITableView 中 就像 Pastebot 所做的那样 但我也尝试
  • 查找 Git 提交来自哪个分支

    有没有办法根据给定的情况找出提交来自哪个分支SHA 1 http en wikipedia org wiki SHA 1哈希值 如果您能告诉我如何使用 Ruby Grit 来完成此任务 那就加分了 虽然 Dav 的说法是正确的 即信息并未直
  • 安卓。以列表视图显示联系人

    我想在列表视图中显示联系人 并对所有联系人添加操作 例如单击特定联系人 它应该显示电话号码 邮件 ID 和删除特定联系人 import android app ListActivity import android content Cont