KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a custom ArrayAdapter called InteractiveArrayAdapter that adds buttons and button listeners to each item in a list view. Inside the adapter there is a getView method that creates a view inflator. Inside of here is where my button is created and the buttonListener is created. When the button is clicked i delete the element in my ArrayList associated with that button. The problem is that i cant figure out how to call notifyDataSetChange from within this OnClick method, or another way to notify the adapter that the listView needs to be updated. Custom adapter: public class InteractiveArrayAdapter extends ArrayAdapter<String> { private final List<String> list; private final Activity context; private ListView listV; public InteractiveArrayAdapter(Activity context, List<String> list) { super(context, R.layout.rowbuttonlayout, list); this.context = context; this.list = list; } static class ViewHolder { protected TextView text; protected Button button; } @Override public View getView(int position, View convertView, ViewGroup parent) { View view = null; if (convertView == null) { LayoutInflater inflator = context.getLayoutInflater(); view = inflator.inflate(R.layout.rowbuttonlayout, null); final ViewHolder viewHolder = new ViewHolder(); viewHolder.text = (TextView) view.findViewById(R.id.label); viewHolder.button = (Button) view.findViewById(R.id.add); viewHolder.button .setOnClickListener(new Button.OnClickListener() { // @Override // public void onButtonClicked(Button buttonView, // boolean isChecked) { // String element = (String) viewHolder.button // .getTag(); // element.setSelected(buttonView.isChecked()); // // } public void onClick(View v) { String tag = (St
Tags (comma-separated)
Save Edits
Cancel