package com.jiuqi.njt.ui; import java.util.ArrayList; import java.util.List; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.ViewStub; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; import com.jiuqi.mobile.nigo.comeclose.bean.client.CooperAndGroupBean; import com.jiuqi.mobile.nigo.comeclose.bean.client.Single; import com.jiuqi.njt.R; import com.jiuqi.njt.adapter.TreeViewSingleAdapter; import com.jiuqi.njt.model.UserTreeElement; import com.jiuqi.njt.son.TakePosition; import com.jiuqi.njt.util.TitleBarUtil; import com.jiuqi.njt.util.UIUtil; public class GjhfActivity extends AbstractNjtActivity02 implements OnClickListener { private EditText find; private Button sure; private Button textDesc; private Button findkey; private ListView listview; public ViewStub rlTitleBar; private TreeViewSingleAdapter treeViewAdapter; // /显示的数量 private ArrayList<UserTreeElement> showUserCount = new ArrayList<UserTreeElement>(); // /总的节点数 private ArrayList<UserTreeElement> allUserlist = new ArrayList<UserTreeElement>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } protected void initWidgets() { setContentView(R.layout.expandlist); initTitleBar(); find = (EditText) this.findViewById(R.id.find); findkey = (Button) this.findViewById(R.id.findkey); sure = (Button) this.findViewById(R.id.sure); textDesc = (Button) this.findViewById(R.id.textDesc); listview = (ListView) this.findViewById(R.id.userlist); } protected void initTitleBar() { rlTitleBar = (ViewStub) findViewById(R.id.titleBarStub); TitleBarUtil.createTitleBar(this, rlTitleBar, "轨迹回放", new OnClickListener() { @Override public void onClick(View v) { GjhfActivity.this.finish(); } }); } protected void initListeners() { findkey.setOnClickListener(this); sure.setOnClickListener(this); textDesc.setOnClickListener(this); } protected void initUI() { sure.setVisibility(Button.GONE); textDesc.setVisibility(Button.GONE); } protected void doQuery(){ findKey = find.getText().toString(); getUserTask = new GetUserTask(); getUserTask.execute(); } @Override protected void onQueryComplete() { initListview(); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.findkey: if(UIUtil.isFastDoubleClick()){ return; } doQuery(); break; default: break; } } private void initListview() { initialData(); treeViewAdapter = new TreeViewSingleAdapter(this,showUserCount ,allUserlist); listview.setAdapter(treeViewAdapter); listview.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // ViewHolder vHollder = (ViewHolder) view.getTag(); UserTreeElement treeElements = showUserCount.get(position); if(!treeElements.isCooper()&&!treeElements.getParent().equals("00")){ String targetName = treeElements.getOutlineTitle(); String targetSim = treeElements.getSim(); Intent intent = new Intent(GjhfActivity.this,TakePosition.class); intent.putExtra("name", targetName); intent.putExtra("sim", targetSim); startActivity(intent); } } }); } private void initialData() { if (null != parent) { //初始化数据 showUserCount.clear(); allUserlist.clear(); List<CooperAndGroupBean> cooperAndGroups = parent.getChildren(); UserTreeElement parentElement = new UserTreeElement(parent.getParent().getGuid(), parent.getParent().getName(), false, true , "00", 0, false,"","",parent.getParent().getIsCooper()==1?true:false); showUserCount.add(parentElement); for (int i = 0; i < cooperAndGroups.size(); i++) { CooperAndGroupBean bean = cooperAndGroups.get(i); Single singleGroup = bean.getParent(); // String id, String outlineTitle,boolean mhasParent, boolean mhasChild, String parent, int level,boolean expanded if (singleGroup.getIsCooper() == 1) { UserTreeElement treeElements = new UserTreeElement(singleGroup.getGuid(), singleGroup.getName(), false, bean.getChildren()!=null&&bean.getChildren().size()>0, parent.getParent().getGuid(), 1, false,"","",true); allUserlist.add(treeElements); List<CooperAndGroupBean> s = bean.getChildren(); for (CooperAndGroupBean b : s) { UserTreeElement userEle= new UserTreeElement(b.getParent().getGuid(),b.getParent().getName(), true, false, singleGroup.getGuid(), 2, false,b.getParent().getSim(),b.getParent().isActive()?"":"(未激活)",parent.getParent().getIsCooper()==1?true:false); allUserlist.add(userEle); } }else{ UserTreeElement treeElements = new UserTreeElement(singleGroup.getGuid(), singleGroup.getName(), false, bean.getChildren()!=null&&bean.getChildren().size()>0, parent.getParent().getGuid(), 1, false,singleGroup.getSim(),singleGroup.isActive()?"":"(未激活)",false); allUserlist.add(treeElements); } } } } }