package com.itbox.grzl.activity; import handmark.pulltorefresh.library.PullToRefreshBase.Mode; import handmark.pulltorefresh.library.PullToRefreshListView; import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.EditText; import android.widget.ImageView; import android.widget.TextView; import butterknife.ButterKnife; import butterknife.InjectView; import butterknife.OnClick; import butterknife.Optional; import com.activeandroid.query.Delete; import com.itbox.fx.net.GsonResponseHandler; import com.itbox.grzl.Api; import com.itbox.grzl.AppContext; import com.zhaoliewang.grzl.R; import com.itbox.grzl.adapter.CommentMarkAdapter; import com.itbox.grzl.bean.CommentGet; import com.itbox.grzl.bean.CommentMarkAdd; import com.itbox.grzl.bean.CommentMarkGet; import com.itbox.grzl.bean.RespResult; import com.itbox.grzl.engine.CommentEngine; import com.itbox.grzl.engine.CommentEngine.CommentMarkItem; import com.nostra13.universalimageloader.core.ImageLoader; /** * 论坛列表界面 * * @author byz * @date 2014-5-11下午4:26:37 */ public class CommentInfoActivity extends BaseLoadActivity<CommentMarkGet> { @InjectView(R.id.text_medium) protected TextView mTitleTv; @InjectView(R.id.lv_list) protected PullToRefreshListView mListView; @InjectView(R.id.et_content) protected EditText mContentEt; public static class HeaderView { @InjectView(R.id.tv_name) protected TextView mNameTv; @InjectView(R.id.tv_content) protected TextView mContentTv; @InjectView(R.id.tv_count) protected TextView mCountTv; @InjectView(R.id.tv_title) protected TextView mCommentTitleTv; @InjectView(R.id.iv_head) protected ImageView mHeadIv; } private CommentMarkAdapter mAdapter; private CommentGet mBean; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_comment_info); mBean = getIntent().getParcelableExtra("bean"); if (mBean == null) { finish(); return; } ButterKnife.inject(this); // 清空评论数据库,防止显示别的评论 new Delete().from(CommentMarkGet.class).execute(); initView(); } private void initView() { showLeftBackButton(); // 添加头 View header = View.inflate(getApplicationContext(), R.layout.item_top_comment_info, null); mListView.getRefreshableView().addHeaderView(header); HeaderView hv = new HeaderView(); ButterKnife.inject(hv, header); hv.mContentTv.setText(mBean.getCommentcontent()); hv.mCountTv.setText("回复数:" + mBean.getReplacecount()); hv.mNameTv.setText(mBean.getUsername()); hv.mCommentTitleTv.setText(mBean.getTitle()); ImageLoader.getInstance().displayImage( Api.User.getAvatarUrl(mBean.getPhoto()), hv.mHeadIv); mTitleTv.setText("论坛详情"); mAdapter = new CommentMarkAdapter(getContext(), null); initLoad(mListView, mAdapter, CommentMarkGet.class); mListView.setMode(Mode.PULL_FROM_END); } @OnClick(R.id.bt_mark) public void onClick(View v) { // 评论 String content = mContentEt.getText().toString(); if (TextUtils.isEmpty(content)) { showToast("请输入内容"); return; } CommentMarkAdd bean = new CommentMarkAdd(); bean.setCommentcontent(content); bean.setId(mBean.getCommentId() + ""); bean.setUserid(AppContext.getInstance().getAccount().getUserid() .toString()); showProgressDialog("正在提交..."); CommentEngine.addCommentMark(bean, new GsonResponseHandler<RespResult>( RespResult.class) { @Override public void onFinish() { super.onFinish(); dismissProgressDialog(); } @Override public void onSuccess(RespResult result) { super.onSuccess(result); if (result.isSuccess()) { showToast("评论成功"); mContentEt.setText(""); loadFirstData(); } else { showToast("评论失败"); } } @Override public void onFailure(Throwable error, String content) { super.onFailure(error, content); showToast(content); } }); } /** * 从网络加载数据 */ protected void loadData(final int page) { CommentEngine .getCommentMark(page, mBean.getCommentId(), new GsonResponseHandler<CommentMarkItem>( CommentMarkItem.class) { @Override public void onSuccess(CommentMarkItem bean) { // 保存到数据库 saveData(page, bean.getCommentItem()); } @Override public void onFinish() { super.onFinish(); loadFinish(); } }); } }