【问题标题】:How to show multiple times icon in contact detail for my app icon like whatsapp如何在我的应用程序图标(如whatsapp)的联系人详细信息中显示多次图标
【发布时间】:2019-03-26 18:14:30
【问题描述】:

我正在尝试显示多行,因为我的应用还支持聊天和通话服务。我想像 whatsap 一样显示如下图所示。

我已经使用来自不同博客的一些帮助实现了同步适配器和所有其他东西。我已经成功添加了一行,但我想要多行,因为我们可以在该图片中看到 whatsap。我想显示多行,如图所示。

Please see this for better understanding

为了只显示一行,我正在使用下面的代码。

ContentProviderOperation.Builder builder = ContentProviderOperation.newInsert(RawContacts.CONTENT_URI);
            builder.withValue(RawContacts.ACCOUNT_NAME, Constants.ACCOUNT_NAME);
            builder.withValue(RawContacts.ACCOUNT_TYPE, Constants.ACCOUNT_TYPE);
            builder.withValue(RawContacts.SYNC1, contact.name);
            ops.add(builder.build());
  builder = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI);
            builder.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0);
            builder.withValue(ContactsContract.Data.MIMETYPE, "vnd.android.cursor.item/com.example.ajay.contacts_4");
builder.withValue(ContactsContract.Data.DATA1, contact.name);
    builder.with Value(ContactsContract.Data.DATA2, "SyncProviderDemo Profile");
  builder.withValue(ContactsContract.Data.DATA3, "View profile");
            ops.add(builder.build());


            try {
                resolver.applyBatch(ContactsContract.AUTHORITY, ops);
            } catch (Exception e) {
                e.printStackTrace();
            }

【问题讨论】:

    标签: android-contentprovider android-contacts android-syncadapter


    【解决方案1】:

    正如您在问题中看到的那样,我只使用 ContentProviderOperation.newInsert 插入了一次。但是当我为同一个联系人添加多个时间然后应用批处理时。 然后一个联系人包含多行。

    建造者 = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI); builder.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0); builder.withValue(ContactsContract.Data.MIMETYPE, “vnd.android.cursor.item/com.example.ajay.contacts_4”); builder.withValue(ContactsContract.Data.DATA1, contact.name); builder.with Value(ContactsContract.Data.DATA2, "SyncProviderDemo Profile"); builder.withValue(ContactsContract.Data.DATA3, "Call" + number); ops.add(builder.build());

    建造者 = ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI); builder.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0); builder.withValue(ContactsContract.Data.MIMETYPE, “vnd.android.cursor.item/com.example.ajay.contacts_4”); builder.withValue(ContactsContract.Data.DATA1, contact.name); builder.with Value(ContactsContract.Data.DATA2, "SyncProviderDemo Profile"); builder.withValue(ContactsContract.Data.DATA3, "Message" + number); ops.add(builder.build()); 尝试 { resolver.applyBatch(ContactsContract.AUTHORITY, ops); } 捕捉(异常 e){ e.printStackTrace(); }

    【讨论】:

      猜你喜欢
      • 2020-09-13
      • 2023-03-05
      • 2020-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      相关资源
      最近更新 更多