更新Class之外的ArrayAdapter

时间:2013-08-28 08:11:35

标签: android

我在子类之外有一个实现ArrayAdapter的自定义Dialog类有没有办法可以从另一个类或膨胀的视图调用notifyDataSetChanged()

//This is a Subclass
public class myClass extend ArrayAdapter{


   myDialog.showPopDialog();

}


// another class
public class myDialog implements onClickListener{

  public void showPopDialog(){
    Button mybutton = (Button) findViewbyId(R.id.mybutton);
    mybutton.setOnClickListener(this)
   }

    @Override
    public void onClick(View v) {

        // I want to call notifyDataSetChanged() from here
   }
}

2 个答案:

答案 0 :(得分:1)

希望这将有助于你

In Your **Actitvity** Class :

PassengerListView myAdapter;


//From where u have to call u r notifyDataSetChanged

myAdapter = new PassengerListView(MainActivity.this, allValues);
listView.setAdapter(myAdapter);
myAdapter.notifyDataSetChanged();

答案 1 :(得分:0)

因为notifyDataSetChanged()是一个公共方法,所以你只需要保存适配器的引用,你需要调用这个方法。
要保存对象的引用你想要,,,,这有很多种方法,例如通过对话框类中的方法(constructer?)传递引用,单例,公共静态等等。 观点是一样的。