Thank  you for your response Seshu, But I would like to delete list
row, when I click on delete button from List view.


On Mar 20, 1:12 pm, Seshu <[email protected]> wrote:
> Hi radhakrishna,
> if u want to delete the list row in the list view.
>
> protected void onListItemClick(ListView l, View v, int position,
> long id) {
>     super.onListItemClick(l, v, position, id);
>         Toast.makeText(this, "Click-" + String.valueOf(position),
> Toast.LENGTH_SHORT).show();
>
>      dataValues..remove(position);
>
>     }
>
> Thanks and Regards,
> S.Seshu
>
> On Mar 20, 2:41 am, radhakrishna <[email protected]>
> wrote:
>
>
>
>
>
>
>
> > Hi All,
>
> > I am trying to remove an item from  listview,
> > My Listview contains Text and Delete button in each row,
> > when I click on delete button its removing Last row from List view,
> > not the actual one which I clicked
>
> > Here is the Activity Class:
> > --------------------------------------------------------------------------- 
> > --------------------------------------
>
> > public class TestListItemsView1Activity extends ListActivity {
> >     /** Called when the activity is first created. */
>
> >         private EfficientAdapter efficientAdapter;
> >         private static String[] data = new String[] { "BBC", "Yahoo", "CNN",
> > "Eenadu", "Hindu" };
> >         private static List<String> dataValues = Arrays.asList(data);
>
> >     @Override
> >     public void onCreate(Bundle savedInstanceState) {
> >         super.onCreate(savedInstanceState);
>
> >         requestWindowFeature(Window.FEATURE_NO_TITLE);
> >         setContentView(R.layout.main);
> >         efficientAdapter = new EfficientAdapter(this, dataValues);
>
> >         setListAdapter(efficientAdapter);
> >     }
>
> >     @Override
> >     protected void onListItemClick(ListView l, View v, int position,
> > long id) {
> >     super.onListItemClick(l, v, position, id);
> >         Toast.makeText(this, "Click-" + String.valueOf(position),
> > Toast.LENGTH_SHORT).show();
> >     }
>
> > Here is the Adapter class
> > --------------------------------------------------------------------------- 
> > --------------------------------------
>
> > public class EfficientAdapter extends BaseAdapter implements
> > Filterable{
>
> >         private LayoutInflater mInflater;
> >         private Context context;
> >         final private List<String> data= new ArrayList<String>();
> >         private HashMap<String,EfficientAdapter.ViewHolder> holders= new
> > HashMap<String, EfficientAdapter.ViewHolder>();
>
> >         public EfficientAdapter(Context context,List<String> data) {
> >                 //super(context, R.layout.main, values);
> >                 mInflater = LayoutInflater.from(context);
> >                 this.context=context;
> >                 this.data.addAll(data);
> >         }
>
> >         public View getView(final int position, View convertView, ViewGroup
> > parent) {
> >                 ViewHolder holder;
>
> >                 if(convertView == null){
> >                         convertView = 
> > mInflater.inflate(R.layout.adaptor_content, null);
>
> >                         holder = new ViewHolder();
> >                         holder.textLine = (TextView)
> > convertView.findViewById(R.id.textLine);
> >                         holder.buttonLine =(Button)
> > convertView.findViewById(R.id.buttonLine);
>
> >                         holder.textLine.setText(this.data.get(position));
> >                         convertView.setOnClickListener(new 
> > OnClickListener() {
> >                                 private int pos= position;
> >                                 public void onClick(View v) {
> >                                         Toast.makeText(context, "Click-" + 
> > String.valueOf(pos),
> > Toast.LENGTH_SHORT).show();
>
> >                                 }
> >                         });
>
> >                         holder.buttonLine.setOnClickListener(new 
> > OnClickListener() {
> >                                 private int pos= position;
>
> >                                 public void onClick(View v) {
> >                                         ViewHolder deleteHolder = 
> > (ViewHolder)v.getTag();
> >                                         int 
> > delPosition=deleteHolder.position;
> >                                         holders.remove(delPosition);
> >                                         ViewHolder currentHolder;
> >                                         for(int i=pos+1;i<getCount();i++){
> >                                                 currentHolder = 
> > holders.get(delPosition);
> >                                                 currentHolder.position=i-1;
> >                                         }
> >                                         data.remove(delPosition);
> >                                         notifyDataSetChanged();
>
> >                                         Toast.makeText(context, "Delete-" + 
> > String.valueOf(pos),
> > Toast.LENGTH_SHORT).show();
>
> >                                 }
> >                         });
> >                         holder.position=position;
> >                         holders.put(Integer.toString(position), holder);
> >                         convertView.setTag(holder);
>
> >                 } else {
> >                         holder =(ViewHolder) convertView.getTag();
> >                 }
>
> >                 return convertView;
> >         }
>
> > advance Thanx,
> > Krishna

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to