Dar*_*rek 4 android android-fragments
我有一个ViewPager里面有一些片段.在创建每个片段时,我调用构造函数,在其中传递此片段的名称:
public KwejkFragment(String tagName)
{
this.fragmentTag = tagName;
}
Run Code Online (Sandbox Code Playgroud)
在MainActivity ofcourse中我创建了Adapter和ViewPager实例.然后我设置了ViewPager的监听器:
mPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
FragmentManager fm = getSupportFragmentManager();
Fragment fr = mAdapter.getItem(position);
if(fr.equals(KwejkFragment.class))
{
(KwejkFragment) fr.refresh(); //I'm trying to call method here for example showMeSomething() but it is unavailable.
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我想:
1)在PagerView中获取当前可见的片段
2)调用此片段的指定方法
这该怎么做?
首先将片段中的方法公之于众,然后使用以下代码
mPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
FragmentManager fm = getSupportFragmentManager();
Fragment fr = mAdapter.getItem(position);
if(fr instanceOf KwejkFragment))
{
fr.refresh();
}
}
Run Code Online (Sandbox Code Playgroud)
将调试器放在refresh方法中并检查它是否被调用.
这段代码可行.请享用 :)
| 归档时间: |
|
| 查看次数: |
8060 次 |
| 最近记录: |