我写了一个listview,当我点击listview中的数据时,可以弹出一个对话框,对话框有两个按钮,一个是删除,一个是取消,我的适配器是用SimpleAdapter,但是,如何才能够弹出的对话框中的删除按钮起到删除这行数据的响应呢???
解决方案 »
- 关于多个fragment切换问题请教
- 进入我的游戏后报这错误。lib fatal signal 11(SIGSEGV)求大神!
- 求助,我在电脑上安装了apk模拟器,然后运行一个apk下载了一些文件,请问我要如何找到这些文件呢?
- 滑屏特效如何实现
- android浮动view问题。
- 请教一个关于HorizontalScrollView的问题
- 使用sdl遇到的问题。请高手来。
- linux-2.6.29-android在omap3530上移植
- android播放flash
- 新人求助帖,第一搞
- android 瓦片地图 历经千辛万苦终于成功了,可是怎么优化显示?
- android translate动画闪屏
Builder(MingxiActivity.this);
builder.setMessage("你选择的是?").setTitle("欢迎").setPositiveButton("删除",
new android.content.DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int
which)
{
dialog.dismiss();
outcometable.delete(item3.get("name1").toString());
}
});
builder.setNegativeButton("修改", new
android.content.DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int
which)
{
dialog.dismiss();
}
});
builder.create().show();
ListTestActivity.javapackage com.wo;import java.util.ArrayList;
import java.util.List;import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;public class ListTestActivity extends Activity {
ListView listView;
MyAdapter adapter;
List<String> list; /** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); list = new ArrayList<String>();
for (int i = 0; i < 20; i++) {
list.add(i + "");
}
adapter = new MyAdapter(this, list);
listView = (ListView) this.findViewById(R.id.listView);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView<?> arg0, View arg1, final int arg2,
long arg3) {
// TODO Auto-generated method stub
AlertDialog.Builder builder = new AlertDialog.Builder(
ListTestActivity.this);
builder.setMessage("你选择的是?");
builder.setTitle("欢迎");
builder.setPositiveButton("删除",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
Log.v("tag", arg2 + "");
list.remove(arg2);
adapter.setList(list);
adapter.notifyDataSetChanged();
dialog.dismiss(); }
});
builder.setNegativeButton("取消",
new android.content.DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss(); }
});
builder.create().show(); } }); }
}MyAdapter.javapackage com.wo;import java.util.List;import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;public class MyAdapter extends BaseAdapter { Context context;
List<String> list; public MyAdapter(Context context, List<String> list) {
this.context = context;
this.list = list;
} public void setList(List<String> list){
this.list=list;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return list.get(arg0);
} @Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
} public void refresh(List<String> list){
this.list=list;
this.notifyDataSetChanged();
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
// TODO Auto-generated method stub
ViewHolder holder = null;
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(R.layout.item,
null);
holder = new ViewHolder();
holder.textView = (TextView) convertView
.findViewById(R.id.textView);
convertView.setTag(holder);
} else {
holder=(ViewHolder) convertView.getTag();
}
Log.v("tag", "getView()"); holder.textView.setText(list.get(position));
return convertView;
} static class ViewHolder {
TextView textView;
}}item.xml<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" > <TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:text="dfsdf"
android:textSize="24sp" /></LinearLayout>注意一下重点是这三句:
list.remove(arg2);
adapter.setList(list);
adapter.notifyDataSetChanged();