android融云自定义发送位置,融云 Android sdk 2.1+ 稳定版 UI 和 模块功能自定义

此片博文只适用于 RongCloud Android SDK  kit 2.1.0 以后的版本

大家期待已久的 融云 2.0+ 稳定版已经发布啦  首先在这里感谢大家对融云的支持  融云2.0+ 自定义强大 功能多多 这里陆续为大家做一些自定义的演示

融云官网请点我 融云Android 开发者群:429046885

1: 怎样在融云的会话界面输入文字右侧点击 " + " 弹出的 bar 中 对 已有的 位置  图片  语音 进行添加或者删除:

5246201.htm

如上图所示: 我只需要我的 bar 中出现 位置 和 相机  需要在代码中做如下配置:(另外两个配置类  ImageInputProvider 相册  VoIPInputProvider 语音)

//我需要让他显示的内容的数组 此处示例 语音 位置

ExtendProvider [] ep = {new LocationInputProvider(RongContext.getInstance()),new CameraInputProvider(RongContext.getInstance())};

//我需要让他在什么会话类型中的 bar 展示

RongIM.resetInputExtensionProvider(ConversationType.PRIVATE, ep);

配置完成运行以后,你会发现你单聊的 "+" 中bar 里面就会出现如上图的效果

注: 1 如果您自己的工程当中点击出来就没有位置的模块 是因为您没有实现

RongIM.LocationProvider

相关代码

2  如果您不需要使用到语音相关的功能 你可以把bar中的语音隐藏后 再把 工程 的libs 的 arm arm-v7 x86 中的 语音相关的 voip.so umcs.so删除

这样可以减小你apk

2:怎么在"+"中的 bar 增加自定义 模块:

5246201.htm7e8bd4ac444502f71d3dc74b8c7e4785.png

首先您需要去 自定义一个类  继承  ExtendProvider   然后实现他的 构造方法  和 没有实现的 方法 详情见下面代码:

public class TestProvider extends ExtendProvider{

private Context mContext;

public TestProvider(RongContext context) {

super(context);

mContext = context;

}

//设置 展示的图标

@Override

public Drawable obtainPluginDrawable(Context arg0) {

// TODO Auto-generated method stub

return arg0.getResources().getDrawable(R.drawable.btn_default);

}

//设置 图标下的title

@Override

public CharSequence obtainPluginTitle(Context arg0) {

// TODO Auto-generated method stub

return "表情";

}

//点击事件

@SuppressWarnings("static-access")

@SuppressLint("ShowToast")

@Override

public boolean onPluginClick(View arg0) {

arg0.inflate(mContext, R.layout.select_dialog_item, null);

return true;

}

}

实现这步 以后  您还需要 把他 加入

resetInputExtensionProvider 的数组里面

//我需要让他显示的内容的数组 此处示例 语音 位置 自定义 Test 模块

ExtendProvider [] ep = {new LocationInputProvider(RongContext.getInstance()),new CameraInputProvider(RongContext.getInstance()),

new TestProvider(RongContext.getInstance())};

//我需要让他在什么会话类型中的 bar 展示

RongIM.resetInputExtensionProvider(ConversationType.PRIVATE, ep);

此处值得注意的是 根据 数据 的排序 你可以控制 bar 中的模块功能的 位置 例如 我上图中 讲 表情这个模块 放在 数组的第三个位置 展现的位置就是第三个 这里开发者 可以根据 您的需求 或者 喜好来控制

下面是一个优秀的开发者的实现的示例图:

ec898921c55e53dca577254151712557.png

未完待续......

推荐github一个好用的框架

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值