// 选择类别
  private void choiceCategory() {
    // 存在直接用
    if (categoryModels.size() > 0) {
      showCategoryList();
    } else {
      showLoading("获取中..", true);
      // 不存在获取一次
      String path = JLXCConst.GET_TOPIC_CATEGORY;
      HttpManager.get(
          path,
          new JsonRequestCallBack<String>(
              new LoadDataHandler<String>() {

                @Override
                public void onSuccess(JSONObject jsonResponse, String flag) {
                  super.onSuccess(jsonResponse, flag);
                  hideLoading();
                  int status = jsonResponse.getInteger(JLXCConst.HTTP_STATUS);
                  if (status == JLXCConst.STATUS_SUCCESS) {
                    // 已经有了
                    if (categoryModels.size() > 0) {
                      showCategoryList();
                      return;
                    }
                    JSONObject jResult = jsonResponse.getJSONObject(JLXCConst.HTTP_RESULT);
                    JSONArray categoryArray = jResult.getJSONArray(JLXCConst.HTTP_LIST);
                    // 模型拼装
                    for (int i = 0; i < categoryArray.size(); i++) {
                      JSONObject object = categoryArray.getJSONObject(i);
                      GroupCategoryModel model = new GroupCategoryModel();
                      model.setCategory_id(object.getIntValue("category_id"));
                      model.setCategory_name(object.getString("category_name"));
                      categoryModels.add(model);
                    }

                    showCategoryList();
                  }

                  if (status == JLXCConst.STATUS_FAIL) {
                    ToastUtil.show(CreateGroupActivity.this, "获取失败,请重试");
                  }
                }

                @Override
                public void onFailure(HttpException arg0, String arg1, String flag) {
                  hideLoading();
                  super.onFailure(arg0, arg1, flag);
                  ToastUtil.show(CreateGroupActivity.this, "获取失败,请重试");
                }
              },
              null));
    }
  }
  // 关注别人
  private void addFriendConfirm(int index) {

    final FriendModel friend = dataList.get(index);
    // 参数设置
    RequestParams params = new RequestParams();
    params.addBodyParameter("user_id", UserManager.getInstance().getUser().getUid() + "");
    params.addBodyParameter("friend_id", friend.getUid() + "");

    // showLoading("添加中^_^", false);
    HttpManager.post(
        JLXCConst.Add_FRIEND,
        params,
        new JsonRequestCallBack<String>(
            new LoadDataHandler<String>() {

              @Override
              public void onSuccess(JSONObject jsonResponse, String flag) {
                super.onSuccess(jsonResponse, flag);
                hideLoading();
                int status = jsonResponse.getInteger(JLXCConst.HTTP_STATUS);
                ToastUtil.show(
                    OtherAttentOrFansActivity.this, jsonResponse.getString(JLXCConst.HTTP_MESSAGE));

                if (status == JLXCConst.STATUS_SUCCESS) {
                  // 本地数据持久化
                  IMModel imModel = new IMModel();
                  imModel.setTargetId(JLXCConst.JLXC + friend.getUid());
                  imModel.setAvatarPath(friend.getHead_image());
                  imModel.setTitle(friend.getName());
                  MessageAddFriendHelper.addFriend(imModel);
                  friend.setOrHasAttent(true);
                  friendAdapter.replaceAll(dataList);
                }
              }

              @Override
              public void onFailure(HttpException arg0, String arg1, String flag) {
                super.onFailure(arg0, arg1, flag);
                hideLoading();
                ToastUtil.show(OtherAttentOrFansActivity.this, "网络异常");
              }
            },
            null));
  }
  private void deleteFriendConfirm(int index) {
    final FriendModel friend = dataList.get(index);
    // 参数设置
    RequestParams params = new RequestParams();
    params.addBodyParameter("user_id", UserManager.getInstance().getUser().getUid() + "");
    params.addBodyParameter("friend_id", friend.getUid() + "");

    showLoading("取消中..", false);
    HttpManager.post(
        JLXCConst.DELETE_FRIEND,
        params,
        new JsonRequestCallBack<String>(
            new LoadDataHandler<String>() {

              @Override
              public void onSuccess(JSONObject jsonResponse, String flag) {
                super.onSuccess(jsonResponse, flag);
                hideLoading();
                int status = jsonResponse.getInteger(JLXCConst.HTTP_STATUS);
                ToastUtil.show(
                    OtherAttentOrFansActivity.this, jsonResponse.getString(JLXCConst.HTTP_MESSAGE));

                if (status == JLXCConst.STATUS_SUCCESS) {
                  RongIMClient.getInstance()
                      .removeConversation(
                          ConversationType.PRIVATE, JLXCConst.JLXC + friend.getUid(), null);
                  friend.setOrHasAttent(false);
                  // UI变化
                  friendAdapter.replaceAll(dataList);
                }
              }

              @Override
              public void onFailure(HttpException arg0, String arg1, String flag) {
                super.onFailure(arg0, arg1, flag);
                hideLoading();
              }
            },
            null));
  }
  // 创建完成
  private void createNewGroupFinish() {

    // 封面
    if (null == currentImageName || currentImageName.length() < 1) {
      ToastUtil.show(this, "封面怎么可以没有 ∪︿∪");
      return;
    }
    // 名称
    if (topicNameEditText.getText().toString().trim().length() < 1) {
      ToastUtil.show(this, "标题怎么可以没有 ∪︿∪");
      return;
    }
    // 名称
    if (topicNameEditText.getText().toString().trim().length() > 16) {
      ToastUtil.show(this, "标题不能超过16个字  ∪︿∪");
      return;
    }
    // 介绍
    if (topicDescEditText.getText().toString().trim().length() < 1) {
      ToastUtil.show(this, "描述不能没有  ∪︿∪");
      return;
    }
    // 介绍
    if (topicDescEditText.getText().toString().trim().length() < 25) {
      ToastUtil.show(this, "描述不能少于26个字 ∪︿∪");
      return;
    }
    // 介绍
    if (topicDescEditText.getText().toString().trim().length() > 200) {
      ToastUtil.show(this, "描述不能超过200个字");
      return;
    }
    // 类型
    if (topicCategoryID < 1) {
      ToastUtil.show(this, "类型还没选呢  ∪︿∪");
      return;
    }

    // 参数设置
    RequestParams params = new RequestParams();
    params.addBodyParameter("user_id", UserManager.getInstance().getUser().getUid() + "");
    params.addBodyParameter("topic_name", topicNameEditText.getText().toString().trim());
    params.addBodyParameter("topic_desc", topicDescEditText.getText().toString().trim());
    params.addBodyParameter("category_id", topicCategoryID + "");
    File uplodaFile = new File(FileUtil.BIG_IMAGE_PATH + currentImageName);
    if (!uplodaFile.exists()) {
      return;
    }
    params.addBodyParameter("image", uplodaFile);

    showLoading("创建中 (≡ω≡.)", false);

    HttpManager.post(
        JLXCConst.POST_NEW_TOPIC,
        params,
        new JsonRequestCallBack<String>(
            new LoadDataHandler<String>() {

              @Override
              public void onSuccess(JSONObject jsonResponse, String flag) {
                super.onSuccess(jsonResponse, flag);
                LogUtils.i(jsonResponse.toJSONString(), 1);
                hideLoading();
                int status = jsonResponse.getInteger(JLXCConst.HTTP_STATUS);
                if (status == JLXCConst.STATUS_SUCCESS) {
                  ToastUtil.show(
                      CreateGroupActivity.this, jsonResponse.getString(JLXCConst.HTTP_MESSAGE));

                  // 删除临时文件
                  File tmpFile = new File(FileUtil.BIG_IMAGE_PATH + currentImageName);
                  if (tmpFile.exists()) {
                    tmpFile.delete();
                  }
                  tmpImageName = "";
                  currentImageName = "";
                  JSONObject jsonObject = jsonResponse.getJSONObject(JLXCConst.HTTP_RESULT);
                  // 发送通知
                  GroupTopicModel model = new GroupTopicModel();
                  model.setTopic_id(jsonObject.getIntValue("id"));
                  model.setTopic_cover_image(jsonObject.getString("topic_cover_image"));
                  model.setTopic_name(jsonObject.getString("topic_name"));
                  model.setTopic_detail(jsonObject.getString("topic_detail"));
                  model.setNews_count(0);
                  model.setMember_count(1);
                  sendBroadCastData(model);
                  finishWithRight();
                }

                if (status == JLXCConst.STATUS_FAIL) {
                  ToastUtil.show(
                      CreateGroupActivity.this, jsonResponse.getString(JLXCConst.HTTP_MESSAGE));
                }
              }

              @Override
              public void onFailure(HttpException arg0, String arg1, String flag) {
                hideLoading();
                super.onFailure(arg0, arg1, flag);
                ToastUtil.show(CreateGroupActivity.this, "网络异常  ∪︿∪");
              }
            },
            null));
  }
  // 发布动态
  private void publishNews() {

    if ("".equals(contentEditText.getText().toString().trim())
        && addImageLayout.getChildCount() == 1) {
      ToastUtil.show(this, "内容和图片至少有一个不能为空=_=");
      return;
    }

    if (contentEditText.getText().toString().length() > 140) {
      ToastUtil.show(this, "内容不能超过140字=_=");
      return;
    }

    final UserModel userModel = UserManager.getInstance().getUser();
    showLoading("发布中,请稍候...", false);
    RequestParams params = new RequestParams();
    // 用户id
    params.addBodyParameter("uid", userModel.getUid() + "");
    // 内容
    params.addBodyParameter("content_text", contentEditText.getText().toString());
    // location
    params.addBodyParameter("location", locationString);
    // 哪个圈子里的
    if (topicId > 0) {
      params.addBodyParameter("topic_id", topicId + "");
    }

    // 图片
    for (int i = 0; i < addImageLayout.getChildCount(); i++) {
      View view = addImageLayout.getChildAt(i);
      // 如果不是添加按钮
      if (view != addImageView) {
        // 图片
        File file = new File((String) view.getTag());
        if (file.exists()) {
          params.addBodyParameter("image" + i, file);
        }
      }
    }

    // 姓名
    HttpManager.post(
        JLXCConst.PUBLISH_NEWS,
        params,
        new JsonRequestCallBack<String>(
            new LoadDataHandler<String>() {

              @Override
              public void onSuccess(JSONObject jsonResponse, String flag) {
                super.onSuccess(jsonResponse, flag);
                hideLoading();
                int status = jsonResponse.getIntValue("status");
                switch (status) {
                  case JLXCConst.STATUS_SUCCESS:
                    // toast
                    ToastUtil.show(
                        PublishNewsActivity.this, jsonResponse.getString(JLXCConst.HTTP_MESSAGE));
                    hideLoading();
                    finishWithRight();
                    publishFinishBroadcast();
                    break;
                  case JLXCConst.STATUS_FAIL:
                    hideLoading();
                    Toast.makeText(
                            PublishNewsActivity.this,
                            jsonResponse.getString(JLXCConst.HTTP_MESSAGE),
                            Toast.LENGTH_SHORT)
                        .show();
                    break;
                }
              }

              @Override
              public void onFailure(HttpException arg0, String arg1, String flag) {
                LogUtils.i(arg0.getMessage(), 1);
                super.onFailure(arg0, arg1, flag);
                hideLoading();
                Toast.makeText(PublishNewsActivity.this, "网络异常", Toast.LENGTH_SHORT).show();
              }
            },
            null));
  }
  /** 获取关注我的信息 */
  public void getAttenOrFans(String page, String size) {
    String path = "";
    if (isAttentOrFans()) {
      path =
          JLXCConst.GET_OTHER_ATTENT_LIST
              + "?"
              + "self_user_id="
              + UserManager.getInstance().getUser().getUid()
              + "&target_user_id="
              + getUserId()
              + "&page="
              + page
              + "&size="
              + size;
    } else {
      path =
          JLXCConst.GET_OTHER_FANS_LIST
              + "?"
              + "self_user_id="
              + UserManager.getInstance().getUser().getUid()
              + "&target_user_id="
              + getUserId()
              + "&page="
              + page
              + "&size="
              + size;
    }

    HttpManager.get(
        path,
        new JsonRequestCallBack<String>(
            new LoadDataHandler<String>() {

              @Override
              public void onSuccess(JSONObject jsonResponse, String flag) {
                super.onSuccess(jsonResponse, flag);
                int status = jsonResponse.getInteger(JLXCConst.HTTP_STATUS);
                if (status == JLXCConst.STATUS_SUCCESS) {
                  friendListView.onRefreshComplete();
                  JSONObject jResult = jsonResponse.getJSONObject(JLXCConst.HTTP_RESULT);
                  JSONArray jsonArray = jResult.getJSONArray(JLXCConst.HTTP_LIST);
                  lastPage = jResult.getString("is_last");
                  // 模型注入
                  jsonToPersonData(jsonArray);

                  if (lastPage.equals("0")) {
                    friendListView.setMode(Mode.BOTH);
                    currentPage++;
                  } else {
                    friendListView.setMode(Mode.PULL_FROM_START);
                  }
                }

                if (status == JLXCConst.STATUS_FAIL) {
                  if (lastPage.equals("0")) {
                    friendListView.setMode(Mode.BOTH);
                  }
                  friendListView.onRefreshComplete();
                  ToastUtil.show(
                      OtherAttentOrFansActivity.this,
                      jsonResponse.getString(JLXCConst.HTTP_MESSAGE));
                }
              }

              @Override
              public void onFailure(HttpException arg0, String arg1, String flag) {
                super.onFailure(arg0, arg1, flag);
                if (lastPage.equals("0")) {
                  friendListView.setMode(Mode.BOTH);
                }
                friendListView.onRefreshComplete();
                ToastUtil.show(OtherAttentOrFansActivity.this, "网络好像有点问题");
              }
            },
            null));
  }