查看传呼机 - 静态变量滑动翻页编程 [英] View Pager - slide to next page programmatically with static variable
问题描述
我想作一个幻灯片编程在我ViewPager。
I would like to make a slide programmatically in my ViewPager.
我的问题是,该滑动事件是由放置作为由ViewPager持有的片段的内部的按钮调用。
My problem is, that the event to slide is called by a button that is placed inside of a fragment that is hold by the ViewPager.
我知道了code:
viewpager.setCurrentItem(int index)
而现在我我的想法是让ViewPager变量公共静态从子片段访问它。
但静态变量不是从子片段访问。
And now I my thought was to make the ViewPager variable public static to access it from the child fragment. But the static variable is not accessible from the child fragment.
如何才能做到这一点通过点击器,放置在页面内的按钮进行幻灯片?
How can I achieve this to make a slide by clicking on a button that is placed inside of a page?
推荐答案
您可以使用接口
来与你的 ViewPager $ C互动$ C>通过您的
中说活动
片段活动举办$ C> $ C>),而不会暴露任何领域。
You can use an interface
to interact with your ViewPager
via your Activity
(or a Fragment
hosted in said Activity
) without exposing any fields.
在 ViewPager
片段
,创建一个接口
public class FragmentInViewPager extends Fragment {
private Callback mCallback;
public interface Callback {
void setViewPagerCurrentPage(int page);
}
@Override
public void onAttach(Activity activity) {
mCallback = (Callback) activity;
//NB: The above will throw ClassCastException if your Activity
//Does not implement FragmentInViewPager.Callback
}
//To call it...
int newPageNumber = 27;
mCallback.setViewPagerCurrentPage(newPageNumber);
让你的活动
实施接口
,并从那里与你的 ViewPager <互动/ code>直接(如果它在你的
活动的变量
)或访问它在你的片段中的一个:
Have your Activity
implement the interface
, and from there interact with your ViewPager
directly (if it is a variable in your Activity
) or access it in one of your fragments:
public class MainActivity extends AppCompatActivity implements FragmentInViewPager.Callback {
private ViewPager mViewPager;
//...
@Override
public void setViewPagerCurrentPage(int page) {
mViewPager.setCurrentItem(page);
//Or...if it is inside another Fragment...
ViewPagerFragment frag = (ViewPagerFragment) getFragmentManager().findFragmentByTag("view_pager_fragment_tag");
if (frag != null) frag.getViewPager().setCurrentItem(page);
}
这篇关于查看传呼机 - 静态变量滑动翻页编程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!