Хороший вопрос.Вы должны использовать интерфейс.давайте попробуем этот код.
public interface OnButtonClickListner {
public void OnButtonClick();
}
Теперь вам нужно передать этот интерфейс в адаптер.вот так
TestPagerAdapter adapter = new TestPagerAdapter(this, pageArr TestPagerAdapter adapter = new TestPagerAdapter(this,new OnButtonClickListner()
{
@Override
public void OnButtonClick() {
// dismiss dialog here
}
});
Теперь вам нужно изменить конструктор адаптера Viewpager.как показано ниже:
public TestPagerAdapter(Context context, List<Promotion> pageArr,OnButtonClickListner listner){
this.context = context;
this.pageArr = pageArr;
this.onButtonClickListner=listner;
inflater = ((Activity) context).getLayoutInflater();
}
Теперь вам просто нужно вызвать этот метод слушателя из адаптера, например onButtonClickListner.OnButtonClick();
, и вызовет метод popup, и вы легко закроете диалоговое окно.Вы также можете передать аргумент, если вам необходимо указать позицию просмотра страницы.
Событие клика read more button
, как показано ниже:
readMoreBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onButtonClickListner.OnButtonClick();
}
});
Надеюсь, это поможет вам.
Удачного кодирования .....