继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【App图片开发快速教程】自定义进度信息提示框

汪汪一只猫
关注TA
已关注
手记 591
粉丝 130
获赞 719

Tag:  移动图片

TuSDK 允许用户自定义进度提示界面,以方便跟用户产品的风格保持一致。

新建一个类并实现进度提示界面处理接口

TuSDK 提供了一个进度提示界面接口 TuMessageHubInterface 来供用户实现,以方便用户引入自己的处理逻辑。该接口中包含了进度提示界面的所有处理方法,包括显示文字、显示处理成功和处理失败提示和关闭提示等,如下所示:

    /**
     * 显示信息
     * 
     * @param context
     *            内容上下文
     * @param status
     *            信息
     */
    public void setStatus(Context context, String status);

    /**
     * 显示信息
     * 
     * @param context
     *            内容上下文
     * @param statusResId
     *            信息资源ID
     */
    public void setStatus(Context context, int statusResId);

    /**
     * 显示成功信息 并自动关闭
     * 
     * @param context
     *            内容上下文
     * @param status
     *            信息
     */
    public void showSuccess(Context context, String status);

    /**
     * 显示成功信息 并自动关闭
     * 
     * @param context
     *            内容上下文
     * @param statusResId
     *            信息资源ID
     */
    public void showSuccess(Context context, int statusResId);

    /**
     * 显示错误信息 并自动关闭
     * 
     * @param context
     *            内容上下文
     * @param status
     *            信息
     */
    public void showError(Context context, String status);

    /**
     * 显示错误信息 并自动关闭
     * 
     * @param context
     *            内容上下文
     * @param statusResId
     *            信息资源ID
     */
    public void showError(Context context, int statusResId);

    /**
     * 使用动画关闭
     */
    public void dismiss();

    /**
     * 立即关闭
     */
    public void dismissRightNow();

首先,用户需要新建一个类 DefineMessageHubImpl 并实现 TuMessageHubInterface 接口,然后实现该接口中的方法。

以 setStatus(Context context, String status) 方法的实现为例,这个方法的作用是把第二个参数的内容展示在提示界面上面,所以用户可以在这个方法中把这两个参数传给自己进度提示展示程序,使程序调用 setStatus(Context context, String status) 方法的时候可以调用用户自己的代码,也就显示了用户自己的进度提示界面。

指定进度提示调用对象

在调用进度提示之前,使用如下代码指定进度提示调用对象:

TuSdk.setMessageHub(new TuDefineMessageHubImpl());

显示进度提示信息

使用下面的代码显示进度提示信息:

TuSdk.messageHub().setStatus(this, R.string.lsq_initing);

因为上一步已经把进度提示调用对象指定为 TuDefineMessageHubImpl 类,所以这里调用上面的显示代码时即会调用 TuDefineMessageHubImpl 类中实现的 setStatus(this, R.string.lsq_initing) 方法,如此也就调用了用户自己的代码。

关闭提示信息

使用下面的代码关闭进度提示信息:

TuSdk.messageHub().dismissRightNow();

或是

TuSdk.messageHub().dismiss();

同样,上面的代码会调用用户在 TuDefineMessageHubImpl 类中实现的 dismissRightNow() 和 dismiss() 方法。

原文链接:http://www.apkbus.com/blog-918768-68569.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP