package com.parttime.common.activity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.BaseAdapter; import android.widget.ListView; import android.widget.TextView; import com.easemob.chatuidemo.activity.BaseActivity; import com.parttime.common.head.ActivityHead; import com.parttime.utils.CheckUtils; import com.qingmu.jianzhidaren.R; /** * 公共选择列表界面 * 用于传入一个字符串列表 * 选择后返回一个字符结果 * Created by wyw on 2015/7/17. */ public class ChooseListActivity extends BaseActivity { public static final String EXTRA_DATA = "data"; public static final String EXTRA_TITLE = "title"; public static final String EXTRA_RESULT = "result"; private String[] data; private String title; private ListView mListViewMain; private ActivityHead activityHead; @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); setContentView(R.layout.activity_choose_list); initIntent(); initControls(); bindListener(); bindData(); } private void bindListener() { mListViewMain.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { if (!CheckUtils.isEmpty(data)) { getIntent().putExtra(EXTRA_RESULT, data[i]); setResult(RESULT_OK, getIntent()); finish(); } } }); } private void bindData() { activityHead.setCenterTxt1(title); ChooseListAdapter adapter = new ChooseListAdapter(); adapter.setAll(this.data); mListViewMain.setAdapter(adapter); } private void initControls() { activityHead = new ActivityHead(this); mListViewMain = (ListView) findViewById(R.id.listview_main); } private void initIntent() { this.title = getIntent().getStringExtra(EXTRA_TITLE); this.data = getIntent().getStringArrayExtra(EXTRA_DATA); } public class ChooseListAdapter extends BaseAdapter { private String[] entities; public void setAll(String[] entities) { this.entities = entities; } @Override public int getCount() { return this.entities != null ? this.entities.length : 0; } @Override public Object getItem(int i) { return entities[i]; } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { ViewHolder viewHolder; if (view == null) { viewHolder = new ViewHolder(); view = getLayoutInflater().inflate(R.layout.item_choose_list, null); viewHolder.mTxtItem = (TextView) view.findViewById(R.id.txt_item); view.setTag(viewHolder); } else { viewHolder = (ViewHolder) view.getTag(); } viewHolder.mTxtItem.setText(entities[i]); return view; } } public class ViewHolder { public TextView mTxtItem; } }