Infact i have a listview and it has "two images + two Textviews" as an item.
What i exactly want to do is that i want to change the textview's text when user clicks the image.
public class ListViewCustomAdapter extends BaseAdapter implements OnClickListener{
`ViewHolder holder;`
`ArrayList<Object> itemList;`
`public Activity context;`
`public LayoutInflater inflater;`
`public ListViewCustomAdapter(Activity context,ArrayList<Object> itemList) {`
`super();`
`this.context = context;`
`this.itemList = itemList;`
`this.inflater =` `(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);`
`}`
`@Override`
`public int getCount() {`
`// TODO Auto-generated method stub`
`return itemList.size();`
`}`
`@Override`
`public Object getItem(int position) {`
`// TODO Auto-generated method stub`
`return itemList.get(position);`
`}`
`@Override`
`public long getItemId(int position) {`
`// TODO Auto-generated method stub`
`return 0;`
`}`
`public static class ViewHolder`
`{`
`ImageView plus;`
`ImageView minus;`
`TextView question;`
`TextView score;`
`}`
`@Override`
`public View getView(int position, View convertView, ViewGroup parent) {`
`// TODO Auto-generated method stub`
`if(convertView==null)`
`{`
`holder = new ViewHolder();`
`convertView = inflater.inflate(R.layout.listitem_row, null);`
`holder.plus = (ImageView) convertView.findViewById(R.id.plus);`
`holder.minus = (ImageView) convertView.findViewById(R.id.minus);`
`holder.plus.setOnClickListener(this);`
`holder.minus.setOnClickListener(this);`
`holder.question = (TextView) convertView.findViewById(R.id.question);`
`holder.score = (TextView) convertView.findViewById(R.id.score);`
`convertView.setTag(holder);`
`}`
`else`
`holder=(ViewHolder)convertView.getTag();`
`ItemBean bean = (ItemBean) itemList.get(position);`
`holder.minus.setImageResource(bean.getminus());`
`holder.plus.setImageResource(bean.getplus());`
`holder.question.setText(bean.getquestion());`
`holder.score.setText(bean.getscore());`
`return convertView;`
`}`
`@Override`
`public void onClick(View v) {`
`switch(v.getId()) {`
`case R.id.minus:`
`{`
`int score = Integer.getInteger(holder.score.getText().toString());`
`holder.score.setText(Integer.toString(score-1));`
`break;`
`}`
`case R.id.plus:`
`{`
`int score = Integer.getInteger(holder.score.getText().toString());`
`holder.score.setText(Integer.toString(score+1));`
`break;`
`}`
`}}`
}
I am getting null pointer exception. What i think the problem is, program is not able to understand that which textview it sould target, like there are multiple items in this listview, and each item contains this Score Textview item.
Plz help me out!!