李慧声 发表于 2013-4-26 22:37
int position = Integer.parseInt(arr[1]); //确定item所在位置
mData.remove(position); //移除该item
M ...
谢谢你!!找对代码了,学习了
- package com.jason.joysmsyd;
-
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
-
- import android.app.ListActivity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.view.Window;
- import android.view.View.OnClickListener;
- import android.widget.BaseAdapter;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
-
- public class SendMain extends ListActivity implements OnClickListener{
-
- Button buttonMessage,buttonContact,buttonHistory;
- EditText textMessage;
-
- List<Map<String,String>> contacts = new ArrayList<Map<String,String>>();
-
-
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- // TODO Auto-generated method stub
- super.onCreate(savedInstanceState);
- this.requestWindowFeature(Window.FEATURE_NO_TITLE);
-
- this.setContentView(R.layout.layout_send);
-
- buttonMessage = (Button) this.findViewById(R.id.ButtonMessage);
- buttonContact = (Button) this.findViewById(R.id.ButtonContact);
- buttonHistory = (Button) this.findViewById(R.id.ButtonHistory);
-
- textMessage = (EditText)this.findViewById(R.id.EditTextMessage);
- textMessage.setText(this.getIntent().getExtras().getString("message"));
-
- }
-
- public void onClick(View v) {
- // TODO Auto-generated method stub
- switch(v.getId()){
- case R.id.ButtonMessage:
- this.finish();
- break;
- case R.id.ButtonContact:
- {
- Intent intent = new Intent();
- intent.setAction("com.jason.action.contact");
- this.startActivityForResult(intent, 0);
- }
- break;
- case R.id.ButtonHistory:
- {
- Intent intent = new Intent();
- intent.setAction("com.jason.action.history");
- this.startActivityForResult(intent, 1);
- }
- break;
- }
-
- }
-
-
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- // TODO Auto-generated method stub
- super.onActivityResult(requestCode, resultCode, data);
- if (requestCode == 0 && resultCode == RESULT_OK) {
- this.getcontactFromString(data.getExtras().getString(
- UserSelectActivity.RETURN_LIST));
- bindDataToList();
- }
- }
-
- private void getcontactFromString(String data) {
- if (data == null || data.length() == 0) {
- return;
- }
-
-
- String[] arrayContact = data.split("#");
- for (String singleContact : arrayContact) {
- if (singleContact != null && singleContact.length() > 0) {
- String[] props = singleContact.split(":");
- if (props.length == 2) {
- Map<String,String> contact = new HashMap<String,String>();
- contact.put("name", props[0]);
- contact.put("phone", props[1]);
- contacts.add(contact);
-
- }
- }
-
- }
-
- }
-
- private void bindDataToList(){
- this.setListAdapter(new MyAdapter());
- }
-
- public class MyAdapter extends BaseAdapter{
-
- public int getCount() {
- // TODO Auto-generated method stub
- return contacts.size();
- }
-
- public Object getItem(int position) {
- // TODO Auto-generated method stub
- return contacts.get(position);
- }
-
- public long getItemId(int position) {
- // TODO Auto-generated method stub
- return position;
- }
-
-
- public View getView(int position, View convertView, ViewGroup parent) {
- // TODO Auto-generated method stub
- LayoutInflater inflater = SendMain.this.getLayoutInflater();
- final View view = inflater.inflate(R.layout.layout_user_item, null);
- final TextView textPhone = (TextView) view.findViewById(R.id.text1);
- final TextView textName = (TextView) view.findViewById(R.id.text2);
- Button button = (Button)view.findViewById(R.id.buttonDelete);
-
- textPhone.setText(contacts.get(position).get("phone"));
- textName.setText(contacts.get(position).get("name"));
-
- button.setTag( position);
-
- button.setOnClickListener(new OnClickListener(){
-
- public void onClick(View v) {
- // TODO Auto-generated method stub
- int position = Integer.parseInt(v.getTag().toString());
- contacts.remove(position);
- MyAdapter.this.notifyDataSetChanged();
-
- // SendMain.this.getListView().refreshDrawableState();
- }});
-
-
-
-
- return view;
- }
-
- }
- }
复制代码 |