解决方案 »
- libcore.java.io.InterruptedStreamTest#testInterruptWritablePipeChannel测试项未通过
- 音乐播放器问题,求解。
- 如何监听数据库中一条记录的value是否有变化?
- 开机自启动问题
- 在javaeye上面看到一个日历,求思路
- android2.3 dialog中能否再跑一个dialog?
- 请问大家研究过opencore的oscl的跨平台吗?
- TableRow中动态布局之后,控件不显示
- 如何提取apk中视频的引用地址?
- TimePicker中如何实现分钟时间间隔,只有选择0或者半小时这两个时间选择
- C#做pdf的翻页效果
- 关于SPEEDTEST服务器
public class DetailActivity1 extends Activity{
private Context mContext = DetailActivity1.this;
private DetailAdapter1 mAdapter;
private List<PingjiaModel> mList = new ArrayList<PingjiaModel>();
private String uiName;
private String uiUser;
ExpandableListView expandableListView;@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.detail_activity);
//获得listView 布局
expandableListView = (ExpandableListView) findViewById(R.id.ExpandableListView01);
text_ping = (TextView) findViewById(R.id.text_ping); //日志的id
if (getIntent().getStringExtra("uuid")==null) {
System.out.println("接收到全部日志的ui为空");
}
else {
uiName = getIntent().getStringExtra("uuid");
}
//创建人的id
if (getIntent().getStringExtra("User")==null) {
System.out.println("接收到创建人的id为空");
}
else {
uiUser = getIntent().getStringExtra("User");
}
text_ping.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
buildAppData();
}
}); //浏览评价
buildAppData();
} * 浏览评价和回复的数据
*/
public void buildAppData(){
//从rihzi 中传来actuuid评价的行动id
final String actuuid = uiName;
//被评价人的id
TaskManagerFactory.createDataTaskManager().addTask(new ITask() {
@Override
public void onTaskNumChanged(int arg0) {
}
@Override
public void execute() {
String jsonData = NetUtil.pingjia(mContext, "Actinfo",
ShareUtil.getSessionid(mContext),
"1", actuuid,"1.1");
try{
if (jsonData !=null) {
final BaseBean base = JsonUtil.base(jsonData);
final PingjiaBean pingInfo = JsonUtil.PingInfo(jsonData);
runOnUiThread(new Runnable() {
@Override
public void run() {
if (base !=null && "0000".equals(base.getRespCode())) {
if (pingInfo.getInfo() != null) {
//img_nodata.setVisibility(View.GONE);
mList = pingInfo.getInfo();
mAdapter = new DetailAdapter1(mContext, (ArrayList<PingjiaModel>) mList);
expandableListView.setAdapter(mAdapter);
//默认展开
int groupCount = expandableListView.getCount();
for (int i = 0; i < groupCount; i++) {
expandableListView.expandGroup(i);
}
}else {
img_nodata.setVisibility(View.VISIBLE);
expandableListView.setVisibility(View.GONE);
}
}
else {
if ("暂无消息".equals(base.getRespMsg())) {
img_nodata.setVisibility(View.VISIBLE);
}else {
Toast.makeText(mContext, "暂无信息", Toast.LENGTH_SHORT).show();
}
}
}
});
}
else {
img_nodata.setVisibility(View.VISIBLE);
startActivity(new Intent(mContext,LoginActivity.class));
finish();
}
} catch (Exception e) {
}
}
});
/*
* expandableListView 的监听事件 点击弹出输入框 输入 回复内容
*/
expandableListView.setOnGroupClickListener(new OnGroupClickListener() {
AlertDialog alertDialog = null;
@Override
public boolean onGroupClick(ExpandableListView parent, View v, final int groupPosition,
long id) {
View editView = View.inflate(mContext, R.layout.detail_huifu_edit, null);
AlertDialog.Builder builder = new Builder(mContext);
TextView txt_title= (TextView) editView.findViewById(R.id.textView1);
txt_title.setText("回 复");
edit_reply = (EditText) editView.findViewById(R.id.edit_reply);
//多行出入文本
edit_reply.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
edit_reply.setSingleLine(false);
TextView text_reply = (TextView) editView.findViewById(R.id.text_reply);
text_reply.setText("确定");
text_reply.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
if (String.valueOf(edit_reply.getText()) ==null||"".equals(String.valueOf(edit_reply.getText()))) {
Toast.makeText(mContext, "内容不能为空", Toast.LENGTH_SHORT).show();
}
else {
//回复的接口 把浏览评价中的uuid evaluateuseid 传递给回复的接口
reply(mList.get(groupPosition).getEvaluateuseid(),mList.get(groupPosition).getUuid());
}
alertDialog.dismiss();
}
});
TextView text_no= (TextView) editView.findViewById(R.id.text_no);
text_no.setText("取消");
text_no.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
alertDialog.dismiss();
}
});
alertDialog = builder.create();
alertDialog.setView(editView, 0, 0, 0, 0);
//alertDialog.setView(editView);
alertDialog.show();
return true;
}
});
}}
package com.hb.android.adapter;
import java.util.ArrayList;
import java.util.List;
import com.hb.android.activity.R;
import com.hb.android.model.HuifuModel;
import com.hb.android.model.PingjiaModel;
import android.app.LauncherActivity.ListItem;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.ListAdapter;
import android.widget.TextView;public class DetailAdapter1 extends BaseExpandableListAdapter{
@SuppressWarnings("unused")
private Context mContext;
private LayoutInflater inflater;
private ArrayList<PingjiaModel> mList;
private List<HuifuModel> hList;
//private EditText edit_reply;
public DetailAdapter1(Context mContext, ArrayList<PingjiaModel> pList ) {
this.mContext = mContext;
inflater = LayoutInflater.from(mContext);
if (pList !=null) {
mList = pList ;
/*
* 把hList 与mList关联起来, 做它的子控件
*/
for (int i = 0; i < mList.size(); i++) {
hList = mList.get(i).getReplyToEval();
}
}else {
mList = new ArrayList<PingjiaModel>();
}
}
@Override
public Object getChild(int groupPosition, int childPosition) {
// 取得与指定分组、指定子项目关联的数据 ::包含子视图的分组的位置 ""指定的分组中的子视图的位置.
//返回 获取指定组中的指定子元素数据。
//return hList.get(groupPosition).getReplyDate();
return hList.get(childPosition);
//return mList.get(groupPosition).equals(hList.get(childPosition));
} @Override
public long getChildId(int groupPosition, int childPosition) {
//与子视图关联的数据.
// 取得给定分组中给定子视图的ID. 该组ID必须在组中是唯一的.必须不同于其他所有ID(分组及子项目的ID).
return childPosition;
} @Override
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
// 取得显示给定分组给定子位置的数据用的视图. 回复
Itemholder itemholder = null;
if (convertView ==null) {
convertView = inflater.inflate(R.layout.detail_huiifu, null);
itemholder = new Itemholder();
itemholder.txt_replyName = (TextView) convertView.findViewById(R.id.replyName);
itemholder.txt_EvaluateUserName = (TextView) convertView.findViewById(R.id.EvaluateUserName);
itemholder.txt_Evaluateinfo = (TextView) convertView.findViewById(R.id.Evaluateinfo);
itemholder.txt_replyDate = (TextView) convertView.findViewById(R.id.text_time);
convertView.setTag(itemholder);
}
else
{
itemholder = (Itemholder) convertView.getTag();
}
HuifuModel huifuModel = hList.get(childPosition);
itemholder.txt_EvaluateUserName.setText(huifuModel.getEvaluateUserName());
itemholder.txt_Evaluateinfo.setText(huifuModel.getEvaluateinfo());
itemholder.txt_replyName.setText(huifuModel.getReplyName());
//
// 同上===
// PingjiaModel model = mList.get(groupPosition);
// ArrayList<HuifuModel> replyToEval = model.getReplyToEval();
// HuifuModel huifuModel = replyToEval.get(childPosition);
// itemholder.txt_EvaluateUserName.setText(huifuModel.getEvaluateUserName());
// itemholder.txt_Evaluateinfo.setText(huifuModel.getEvaluateinfo());
// itemholder.txt_replyName.setText(huifuModel.getReplyName());
return convertView;
}
@Override
public int getChildrenCount(int groupPosition) {
// 取得指定分组的子元素数.
if (hList ==null) {
return 0;
}
return hList.size();
} @Override
public Object getGroup(int groupPosition) {
// 取得与给定分组关联的数据
return mList.get(groupPosition);
} @Override
public int getGroupCount() {
//指定分组的数据.
return mList.size();
} @Override
public long getGroupId(int groupPosition) {
//与分组关联的ID. 取得指定分组的ID.该组ID必须在组中是唯一的.必须不同于其他所有ID(分组及子项目的ID).
return groupPosition;
}
@Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView ==null) {
//浏览评价显示的内容
convertView = inflater.inflate(R.layout.detail_item, null);
holder = new ViewHolder();
holder.txt_user = (TextView) convertView.findViewById(R.id.evaluateUser);
holder.txt_info = (TextView) convertView.findViewById(R.id.Evaluateinfo1);
holder.txt_daText= (TextView) convertView.findViewById(R.id.evaluateDate); convertView.setTag(holder);
}else {
holder = (ViewHolder) convertView.getTag();
}
//浏览评价 获得数据显示出来
PingjiaModel model = mList.get(groupPosition);
holder.txt_user.setText(model.getEvaluateUser());
holder.txt_info.setText(model.getEvaluateinfo());
holder.txt_daText.setText(model.getEvaluateDate());
return convertView;
}
@Override
public boolean hasStableIds() {
//是否指定分组视图及其子视图的ID对应的后台数据改变也会保持该ID.
return true;
} @Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
// 指定位置的子视图是否可选择.
return true;
}
class ViewHolder{
TextView txt_user,txt_info,txt_daText,
txt_publishId,txt_publishName,txt_evaluateuseid,
txt_EvaluateUserName,txt_Evaluateinfo,txt_replyName ,replyToEval
;
}
class Itemholder{
//回复人的名字 回复的信息,被回复人的名字 被回复人的名字
TextView txt_EvaluateUserName,txt_Evaluateinfo,txt_replyName ,txt_replyuserid
,txt_replyDate,txt_uuid
;
}
}
private String Evaluateinfo;//评价信息
private String evaluateUser;//评价人
private String evaluateDate;//评价时间
private String uuid;//这条评价ID
private String evaluateuseid;//评价人的id
private String publishId;//被评价人的id(回复人的id
private String publishName;//被评价人的 回复的人
private ArrayList<HuifuModel> replyToEval;//回复的list 每条表示一个
public String getEvaluateinfo() {
return Evaluateinfo;
}
public void setEvaluateinfo(String evaluateinfo) {
Evaluateinfo = evaluateinfo;
}
public String getEvaluateUser() {
return evaluateUser;
}
public void setEvaluateUser(String evaluateUser) {
this.evaluateUser = evaluateUser;
}
public String getEvaluateDate() {
return evaluateDate;
}
public void setEvaluateDate(String evaluateDate) {
this.evaluateDate = evaluateDate;
}
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getEvaluateuseid() {
return evaluateuseid;
}
public void setEvaluateuseid(String evaluateuseid) {
this.evaluateuseid = evaluateuseid;
}
public String getPublishId() {
return publishId;
}
public void setPublishId(String publishId) {
this.publishId = publishId;
}
public String getPublishName() {
return publishName;
}
public void setPublishName(String publishName) {
this.publishName = publishName;
}
public ArrayList<HuifuModel> getReplyToEval() {
return replyToEval;
}
public void setReplyToEval(ArrayList<HuifuModel> replyToEval) {
this.replyToEval = replyToEval;
}
这是:HuifuModel
private String EvaluateUserName;//被回复人的名字
private String Evaluateinfo;//回复的信息
private String Evaluateuserid;//被回复人的ID
private String replyDate;//回复时间
private String replyName;//回复人的名字
private String replyuserid;//回复人的ID
private String uuid;//这条回复的ID
public String getEvaluateUserName() {
return EvaluateUserName;
}
public void setEvaluateUserName(String evaluateUserName) {
EvaluateUserName = evaluateUserName;
}
public String getEvaluateinfo() {
return Evaluateinfo;
}
public void setEvaluateinfo(String evaluateinfo) {
Evaluateinfo = evaluateinfo;
}
public String getEvaluateuserid() {
return Evaluateuserid;
}
public void setEvaluateuserid(String evaluateuserid) {
Evaluateuserid = evaluateuserid;
}
public String getReplyDate() {
return replyDate;
}
public void setReplyDate(String replyDate) {
this.replyDate = replyDate;
}
public String getReplyName() {
return replyName;
}
public void setReplyName(String replyName) {
this.replyName = replyName;
}
public String getReplyuserid() {
return replyuserid;
}
public void setReplyuserid(String replyuserid) {
this.replyuserid = replyuserid;
}
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
this.uuid = uuid;
}
}
下面的只黏贴了有关 “浏览回复评价”的代码。NetUtil 浏览回复评价的。
/*
* 浏览评价及回复信息
*/
public static String pingjia(Context context ,String submitFlag,String sessionid,String nextPage,String actuuid,String versioncode){
ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("wm.submitFlag", submitFlag));
params.add(new BasicNameValuePair("sessionid",sessionid));
params.add(new BasicNameValuePair("wm.nextPage",nextPage));
params.add(new BasicNameValuePair("actuuid",actuuid));
params.add(new BasicNameValuePair("versioncode", versioncode));
String result = HttpNet.requestByPost(context, test_url+"/appAct/appAct.action", params);
System.out.println("浏览评价URL:"+test_url+"/appAct/appAct.action"+params);
return result;
} JsonUtil
// 判断解析成功状态
public static BaseBean base(String jsonData) {
BaseBean bean = new BaseBean();
try {
JSONObject jsonObj = new JSONObject(jsonData)
.getJSONObject("status");
String respCode = jsonObj.getString("respCode");
String respMsg = jsonObj.getString("respMsg");
bean.setRespCode(respCode);
bean.setRespMsg(respMsg);
} catch (JSONException e) {
System.out.println("Json parse error");
e.printStackTrace();
}
return bean;
}
///////////////////////////////
// 浏览回复评价
public static PingjiaBean PingInfo(String jsonData) {
PingjiaBean bean = null;
try {
Type type = new TypeToken<PingjiaBean>() {
}.getType();
Gson gson = new Gson();
bean = gson.fromJson(jsonData, type);
} catch (Exception e) {
e.printStackTrace();
}
return bean;
}
}
这是 PingjiaBeanpublic class PingjiaBean extends BaseBean{
private ArrayList<PingjiaModel> info;
public ArrayList<PingjiaModel> getInfo() {
return info;
}
public void setInfo(ArrayList<PingjiaModel> info) {
this.info = info;
}
}