Not able to refresh the list.
I have two java file
MainActivity.java
and CustomAdapter.java
MainActivity.java
-----------------
package com.dv.deletev;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.ListView;
public class MainActivity extends Activity {
ListView lv;
String name[]={"Ankit","Arora","Arun","yadav"};
String no[]={"AnAnaAN","cccc","bbbbb","aaa"};
static CustomAdapter obj;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView)findViewById(R.id.listView1);
obj=new CustomAdapter(MainActivity.this,name,no);
lv.setAdapter(obj);
}
public static CustomAdapter take()
{
return obj;
}
}
and
>
CustomAdapter.java
------------------
package com.dv.deletev;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import com.dv.deletev.*;
public class CustomAdapter extends ArrayAdapter<string>
{
String name[];
String no[];
Context con;
MainActivity a;
public CustomAdapter(Context con,String a[],String b[])
{
super(con,R.layout.second,a);
name=a;
this.con=con;
no=b;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
LayoutInflater lv=(LayoutInflater) con.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView=lv.inflate(R.layout.second, null);
TextView tv1=(TextView)convertView.findViewById(R.id.textView1);
TextView tv2=(TextView)convertView.findViewById(R.id.textView2);
Button bt=(Button)convertView.findViewById(R.id.button1);
final List<string> arr1;
final List<string> arr2;
arr1=(List<string>) Arrays.asList(name);
arr2=(List<string>) Arrays.asList(no);
final ArrayList<string> arr=new ArrayList<string>(arr1);
final ArrayList<string> ar=new ArrayList<string>(arr2);
bt.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
arr.remove(position);
ar.remove(position);
a.take().notifyDataSetChanged();
}
});
tv1.setText(name[position]);
tv2.setText(no[position]);
return convertView;
}
}
----------
I don't know why on the click of button its not perform onclick function. I
checked the code many times and its correct.
You can check output at: http://postimg.org/image/5fxs20wgp/
Any suggestions would be remarkable.. :)