Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用在android编程中选中复选框时显示的alertbox从给定自定义listview中删除行的代码_Android_Eclipse_Listview - Fatal编程技术网

使用在android编程中选中复选框时显示的alertbox从给定自定义listview中删除行的代码

使用在android编程中选中复选框时显示的alertbox从给定自定义listview中删除行的代码,android,eclipse,listview,Android,Eclipse,Listview,下面是我的代码 1) 这是一个包含getter和setter方法+基本适配器扩展的类 package virtual.mall; import java.util.List; import virtual.mall.Salt_page_ada.saltlist_holder; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android

下面是我的代码 1) 这是一个包含getter和setter方法+基本适配器扩展的类

package virtual.mall;

import java.util.List;

import virtual.mall.Salt_page_ada.saltlist_holder;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.TextView;

 class Order1_cls {


      String o1_it_name,o1_it_count;
     int o1_it_cost,o1_it_qty;

   Boolean o1isselect=false;
 public Order1_cls(String o1_it_name,String o1_it_count,int o1_it_qty,int o1_it_cost){
       super();
       this.o1_it_name = o1_it_name;
       this.o1_it_count=o1_it_count;
       this.o1_it_qty=o1_it_qty;
       this.o1_it_cost = o1_it_cost;
       this.o1isselect=o1isselect;
  }
public String getO1_it_name() {
    return o1_it_name;
}
public void setO1_it_name(String o1_it_name) {
    this.o1_it_name = o1_it_name;
}
public String getO1_it_count() {
    return o1_it_count;
}
public void setO1_it_count(String o1_it_count) {
    this.o1_it_count = o1_it_count;
}
public int getO1_it_cost() {
    return o1_it_cost;
}
public void setO1_it_cost(int o1_it_cost) {
    this.o1_it_cost = o1_it_cost;
}
public int getO1_it_qty() {
    return o1_it_qty;
}
public void setO1_it_qty(int o1_it_qty) {
    this.o1_it_qty = o1_it_qty;
}
public Boolean getO1isselect() {
    return o1isselect;
}
public void setO1isselect(Boolean o1isselect) {
    this.o1isselect = o1isselect;
}


}
public class Order1_page extends ArrayAdapter<Order1_cls> {
    private List <Order1_cls> order1list;
    private Context context;
    public Order1_page(List<Order1_cls> order1list, Context context) {
        super(context, R.layout.order1listref,order1list);
        this.order1list=order1list;
         this.context=context;

}
    public static class Order1list_holder{

        public TextView o1_name;
        public TextView o1_count;
        public TextView o1_qty;
        public TextView o1_cost;
        public CheckBox o1chkbx;
    }

    public View getView(int pos,View con_view,ViewGroup parent){

        View v=con_view;

        Order1list_holder hold=new Order1list_holder();
        if(con_view==null){
            LayoutInflater inflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            v=inflater.inflate(R.layout.order1listref,null);

            hold.o1_name=(TextView)v.findViewById(R.id.o1_tv_name);
            hold.o1_count=(TextView)v.findViewById(R.id.o1_tv_count);
            hold.o1_qty=(TextView)v.findViewById(R.id.o1_tv_qty);
            hold.o1_cost=(TextView)v.findViewById(R.id.o1_tv_cost);
            hold.o1chkbx=(CheckBox)v.findViewById(R.id.o1_cBox);

            hold.o1chkbx.setOnCheckedChangeListener((Order1class) context);

        }
        else{
            hold=(Order1list_holder)v.getTag();
        }
        Order1_cls o1= order1list.get(pos);
        //hold.o1_name.setText(o1.getO1_it_name());
        hold.o1_count.setText(o1.getO1_it_count());
        hold.o1_qty.setText(" "+o1.getO1_it_qty());
        hold.o1_cost.setText(" " + o1.getO1_it_cost());
        hold.o1chkbx.setChecked(o1.o1isselect);
        hold.o1chkbx.setTag(o1);

        return v;

    }


}
package virtual.mall;
导入java.util.List;
导入virtual.mall.Salt\u页面\u ada.Salt列表\u持有者;
导入android.content.Context;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.ArrayAdapter;
导入android.widget.CheckBox;
导入android.widget.TextView;
类顺序1\u cls{
字符串o1_it_名称,o1_it_计数;
int o1_it_成本,o1_it_数量;
布尔值o1isselect=false;
公共订单1\u cls(字符串o1\u-it\u名称、字符串o1\u-it\u计数、整数o1\u-it\u数量、整数o1\u-it\u成本){
超级();
this.o1_it_name=o1_it_name;
这个.o1_it_count=o1_it_count;
此.o1_it_数量=o1_it_数量;
这.o1_it_成本=o1_it_成本;
this.o1isselect=o1isselect;
}
公共字符串getO1\u it\u name(){
返回o1_it_名称;
}
public void setO1\u it\u名称(字符串o1\u it\u名称){
this.o1_it_name=o1_it_name;
}
公共字符串getO1\u it\u count(){
返回o1_it_计数;
}
公共无效集合1\u it\u计数(字符串o1\u it\u计数){
this.o1_it_count=o1_it_count;
}
公共int getO1_it_成本(){
返回1_it_成本;
}
公共作废设置成本(内部成本){
这.o1_it_成本=o1_it_成本;
}
公共int getO1_it_数量(){
退回1个it数量;
}
公共作废设置1\u it\u数量(int o1\u it\u数量){
此.o1_it_数量=o1_it_数量;
}
公共布尔值getO1isselect(){
返回O1选择;
}
公共无效集合O1SSELECT(布尔值O1SSELECT){
this.o1sselect=o1sselect;
}
}
公共类Order1_页扩展了ArrayAdapter{
私有列表医嘱列表;
私人语境;
公共医嘱1_页面(列表医嘱1列表,上下文){
super(context,R.layout.order1listref,order1list);
this.order1list=order1list;
this.context=context;
}
公共静态类Order1列表\u持有者{
公共文本视图o1_名称;
公共文本视图o1_计数;
公共文本查看o1_数量;
公共文本视图o1_成本;
公共复选框o1chkbx;
}
公共视图getView(内部位置、视图控制视图、视图组父视图){
视图v=con_视图;
Order1list_holder hold=新的Order1list_holder();
if(con_view==null){
LayoutFlater充气器=(LayoutFlater)context.getSystemService(context.LAYOUT\u充气器\u服务);
v=充气机充气(R.layout.order1listref,空);
hold.o1_name=(TextView)v.findViewById(R.id.o1_tv_name);
hold.o1_计数=(TextView)v.findViewById(R.id.o1_电视计数);
hold.o1_数量=(文本视图)v.findViewById(R.id.o1_电视数量);
hold.o1_成本=(文本视图)v.findViewById(R.id.o1_电视成本);
hold.o1chkbx=(复选框)v.findviewbyd(R.id.o1_cBox);
hold.o1chkbx.setOnCheckedChangeListener((Order1class)上下文);
}
否则{
hold=(Order1list_holder)v.getTag();
}
Order1_cls o1=order1list.get(pos);
//hold.o1_name.setText(o1.getO1_it_name());
hold.o1_count.setText(o1.getO1_it_count());
hold.o1_数量设置文本(“+o1.getO1_数量());
hold.o1_cost.setText(“+o1.getO1_it_cost());
hold.o1chkbx.setChecked(o1.o1选择);
hold.o1chkbx.setTag(o1);
返回v;
}
}
2) 这是使用处理程序扩展活动的主类的代码 我已经在下面编写了删除代码,但它显示了一个例外

import java.util.ArrayList;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.SparseBooleanArray;
import android.view.View;
import android.widget.CompoundButton;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.Toast;

public class Order1class extends Activity implements android.widget.CompoundButton.OnCheckedChangeListener  {

    ListView lv;
    ArrayList<Order1_cls> order1list;  //class name in ref java file
    Order1_page o1adapter;     // ref xml name
    ArrayList<Integer> positionslist;
    ImageButton addc,delbtn;
    protected Object posi;
    final Context context = this;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.order1pageclass);
        positionslist=new ArrayList<Integer>();


        lv=(ListView)findViewById(R.id.order1class_listv); //listview id in main layout
        disp_ord1list();

    }





  private void disp_ord1list() {
        // TODO Auto-generated method stub
      order1list =new ArrayList<Order1_cls>();
      order1list.add(new Order1_cls("Rice(basmati)","1kg packet",3,450));
      order1list.add(new Order1_cls("Lentils(finegrade)","2kg packet",2,500));
      order1list.add(new Order1_cls("Colgate","5kg packet",3,60));
      order1list.add(new Order1_cls("cereal","1kg packet",3,60));
      order1list.add(new Order1_cls("surfexcel","2kg packet",2,40));
      order1list.add(new Order1_cls("vim","200gms Bar",1,25));
      order1list.add(new Order1_cls("Flour","5kg packet",1,300));

    o1adapter=new Order1_page(order1list,this);
    lv.setAdapter(o1adapter);
    }




    @Override
    public void onCheckedChanged(CompoundButton but_view, boolean o1isselected) {
        // TODO Auto-generated method stub
        int posi=lv.getPositionForView(but_view);
         if(posi !=ListView.INVALID_POSITION){
             Order1_cls o1=order1list.get(posi);    
        o1.setO1isselect(o1isselected);
        AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(
                context);

            // set title
            alertDialogBuilder.setTitle("remove item ??");

            // set dialog message
            alertDialogBuilder
                .setMessage("Click yes to delete")
                .setCancelable(false)
                .setPositiveButton("Delete",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {
                        for(int position : positionslist){
                            order1list.remove(position);
                         }  o1adapter.notifyDataSetChanged(); 
                    }
                  })
                .setNegativeButton("add",new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,int id) {
                        // if this button is clicked, just close
                        // the dialog box and do nothing
                        dialog.cancel();
                    }
                });

                // create alert dialog
                AlertDialog alertDialog = alertDialogBuilder.create();

                // show it
                alertDialog.show();
            }
        // Toast.makeText(this,"CLICKED ON " + o1.getO1_it_name()+"of count   "+ o1.getO1_it_count()+"cost is "+o1.getO1_it_cost(),Toast.LENGTH_SHORT).show();

         }
    }
import java.util.ArrayList;
导入android.app.Activity;
导入android.app.AlertDialog;
导入android.content.Context;
导入android.content.DialogInterface;
导入android.content.Intent;
导入android.os.Bundle;
导入android.util.SparseBooleanArray;
导入android.view.view;
导入android.widget.CompoundButton;
导入android.widget.ImageButton;
导入android.widget.ListView;
导入android.widget.Toast;
公共类Order1class extends活动实现android.widget.CompoundButton.OnCheckedChangeListener{
ListView lv;
ArrayList order1list;//ref java文件中的类名
Order1\u页面o1adapter;//引用xml名称
ArrayList位置列表;
图像按钮addc,delbtn;
保护对象posi;
最终上下文=此;
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.order1pageclass);
positionslist=新的ArrayList();
lv=(ListView)findViewById(R.id.order1class_listv);//主布局中的ListView id
disp_ord1list();
}
私有无效disp_ord1list(){
//TODO自动生成的方法存根
order1list=新的ArrayList();
订单列表。添加(新订单1_cls(“大米(basmati)”,“1kg包装”,3450);
order1list.add(新的Order1_cls(“扁豆(精细级)”,“2kg包装”,2500));
订单列表。添加(新订单1_cls(“高露洁”,“5kg包装”,3,60));
订单列表。添加(新订单1_cls(“谷物”,“1kg包装”,3,60));
订单列表。添加(新订单1_cls(“surfexcel”,“2kg数据包”,2,40));
订单列表。添加(新订单1_cls(“vim”,“200gms Bar”,1,25));
订单列表。添加(新订单1_cls(“面粉”,“5kg包装”,1300));
o1adapter=新订单1_页面(订单列表,本页);
低压设置适配器(O1适配器);
}
@凌驾
已更改复选框时的公共无效(已选择组合按钮但未选择视图,布尔值O1){
//TODO自动生成的方法存根
int posi=lv.getPositionForView(但_视图);
if(posi!=ListView.位置无效){
Order1_cls o1=order1list.get(posi);
o1.设置o1选择(o1选择);
AlertDialog.Builder alertDialogBuilder=新建AlertDialog.Builder(
上下文);
//定名
alertDialogBuilder.setTitle(“删除项”);
//设置对话框消息
alertDialogBuilder
.setMessage(“单击是删除”)
.setCancelable(错误)
.setPositiveButton(“删除”,新拨号
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:background="#58ACFA"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Order-1    27/3/15"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textSize="25dp" />
    </LinearLayout>

    <ListView
        android:id="@+id/order1class_listv"
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:layout_above="@+id/lay1"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/linearLayout1"
        android:background="#FAFAFA" >

    </ListView>

<LinearLayout
    android:id="@+id/lay1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:background="#58ACFA"
    android:orientation="horizontal" >

    <ImageButton
        android:id="@+id/imageButton3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/menu_btn"
        android:background="#58ACFA" />

    <ImageButton
        android:id="@+id/imageButton4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.65"
        android:src="@drawable/home_btn"
        android:background="#58ACFA"
        />

    <ImageButton
        android:id="@+id/imageButton5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/cart_btn"
        android:background="#58ACFA" />
</LinearLayout>

</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/o1_tv_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:text="Rice(Basmati)"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <CheckBox
        android:id="@+id/o1_cBox"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_margin="5dp"
        android:layout_marginRight="36dp"
        android:text="+ Cart" />

    <TextView
        android:id="@+id/o1_tv_count"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/o1_tv_name"
        android:layout_below="@+id/o1_tv_name"
        android:layout_margin="5dp"
        android:text="5kg Pack"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="20dp" />

    <TextView
        android:id="@+id/o1_tv_qty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/o1_tv_count"
        android:layout_alignBottom="@+id/o1_tv_count"
        android:layout_margin="5dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="28dp"
        android:layout_toLeftOf="@+id/o1_cBox"
        android:text="3"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="20dp" />

    <TextView
        android:id="@+id/tvqty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/o1_tv_qty"
        android:layout_alignBottom="@+id/o1_tv_qty"
        android:layout_margin="5dp"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@+id/o1_tv_name"
        android:text="Qty :"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="20dp" />

    <TextView
        android:id="@+id/o1_tv_cost"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/o1_tv_qty"
        android:layout_alignBottom="@+id/o1_tv_qty"
        android:layout_alignRight="@+id/o1_cBox"
        android:layout_margin="5dp"
        android:text="450 "
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="20dp" />

</RelativeLayout>