簡體   English   中英

從列表視圖中刪除項目,然后在另一個列表視圖活動中添加已刪除的項目?

[英]Remove item from listview and add deleted item on the another listview activity?

您能否舉一個將數據從ListView傳遞到另一個ListView的示例。

例如,我的MainActivity.java具有ListView並且在刪除其中的項目時。 我要實現的是傳遞並將其添加到另一個ListView活動。

MainActivity.java | OnitemClick

@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
        long id) {

    String member_name = rowItems.get(position).getMember_name();
    int product_icons = rowItems.get(position).getProfile_pic_id();
    String status = rowItems.get(position).getStatus();

    // passing data
    Intent i = new Intent(getBaseContext(), CarActivity.class);
    i.putExtra("member_name", member_name);
    i.putExtra("product_icons", product_icons);
    i.putExtra("status", status);

    RowItem item = rowItems.get(position);

    rowItems.remove(item);

    newadapter = new CustomAdapter(this, rowItems);
    mylistview.setAdapter(newadapter);

    newadapter.notifyDataSetChanged();

    Toast.makeText(this.getApplicationContext(),
            "Added to Cart: " + member_name, Toast.LENGTH_SHORT).show();

}

CartActivity.java | onCreate

    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        String member_names = extras.getString("member_name");
        int product_icons = extras.getInt("product_icons");
        String status = extras.getString("status");
    }

    rowItems = new ArrayList<RowItem_cart>();

    RowItem_cart item = new RowItem_cart(member_names, product_icons, status);
    rowItems.add(item);

    mylistview = (ListView) findViewById(R.id.list);

    mylistview.setItemsCanFocus(true);
    //
    final CustomerAdapter_Cart adapter = new CustomerAdapter_Cart(this,
            rowItems);
    mylistview.setAdapter(adapter);

    mylistview.setOnItemClickListener(this);

    mylistview.setScrollingCacheEnabled(false);

    mylistview.invalidateViews();

CustomAdapter_cart

public class CustomerAdapter_Cart extends BaseAdapter {

Context context;
List<RowItem_cart> rowItems;

public CustomerAdapter_Cart(Context context, List<RowItem_cart> rowItems) {
    this.context = context;
    this.rowItems = rowItems;

}

public CustomerAdapter_Cart() {
    // TODO Auto-generated constructor stub
}

@Override
public int getCount() {
    return rowItems.size();
}

@Override
public Object getItem(int position) {
    return rowItems.get(position);
}

@Override
public long getItemId(int position) {
    return rowItems.indexOf(getItem(position));
}

/* private view holder class */
private class ViewHolder {
    ImageView product_icons;
    TextView member_name;
    TextView status;
    Button addtocart;
    EditText txtQuantity;
    TextView lblQty;
}

ViewHolder holder = null;

@Override
public View getView(final int position, View convertView, ViewGroup parent) {

    LayoutInflater mInflater = (LayoutInflater) context
            .getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    if (convertView == null) {
        convertView = mInflater.inflate(R.layout.list_item_cart, null);
        holder = new ViewHolder();

        holder.member_name = (TextView) convertView
                .findViewById(R.id.member_name);
        holder.product_icons = (ImageView) convertView
                .findViewById(R.id.product_icons);
        holder.status = (TextView) convertView.findViewById(R.id.status);
        holder.addtocart = (Button) convertView
                .findViewById(R.id.btnaddtocart);

        holder.txtQuantity = (EditText) convertView
                .findViewById(R.id.txtQuantity);

        holder.lblQty = (TextView) convertView.findViewById(R.id.lblQty);

        convertView.setTag(holder);

    } else {

        holder = (ViewHolder) convertView.getTag();

    }
    RowItem_cart row_pos = rowItems.get(position);

    holder.product_icons.setImageResource(row_pos.getProfile_pic_id());
    holder.member_name.setText(row_pos.getMember_name());
    holder.status.setText(row_pos.getStatus());
    holder.addtocart.setText(" add to cart");

    return convertView;
    }

  }

RowItem_cart

public class RowItem_cart {

private String member_name;
private int profile_pic_id;
private String status;

public RowItem_cart(String member_name, int profile_pic_id, String status) {

    this.member_name = member_name;
    this.profile_pic_id = profile_pic_id;
    this.status = status;

}

public String getMember_name() {
    return member_name;
}

public void setMember_name(String member_name) {
    this.member_name = member_name;
}

public int getProfile_pic_id() {
    return profile_pic_id;
}

public void setProfile_pic_id(int profile_pic_id) {
    this.profile_pic_id = profile_pic_id;
}

public String getStatus() {
    return status;
}

public void setStatus(String status) {
    this.status = status;
}

  }

在您的MainActivity您可能有一個onItemSelected()偵聽器。 在這里,您可以獲得從活動項目列表中刪除的項目。 假設您有一個已刪除項目列表的字段,您只需在該列表上使用剛刪除的項目調用add()

如果沒有您的實際代碼,我們可能會帶您到這里;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM