android的ViewpPger中,如何遍历得到下面布局问加你中的所有控件,方便对空间进行统一管理
在一般的布局文件中,常通过如下方法进行遍历for(inti=0;i<mScrollLayout.getChildCount();i++){Viewscroll=mScro...
在一般的布局文件中,常通过如下方法进行遍历
for (int i = 0; i < mScrollLayout.getChildCount(); i++) {
View scroll = mScrollLayout.getChildAt(i);
for (int j = 0; j < ((ViewGroup) scroll).getChildCount(); j++) {
View relative = ((ViewGroup) scroll).getChildAt(j);
for (int k = 0; k < ((ViewGroup) relative).getChildCount(); k++) {
View gridItem = ((ViewGroup) relative).getChildAt(k);
gridItem.setOnFocusChangeListener(new itemFocusChangeListener());
}
}
}
但是,在ViewPager中,是通过viewPager.setAdapter(new MyViewPagerAdapter());把几个布局文件以list的形式绑定到里面,求各位大神支招,遍历viewPager的方法 展开
for (int i = 0; i < mScrollLayout.getChildCount(); i++) {
View scroll = mScrollLayout.getChildAt(i);
for (int j = 0; j < ((ViewGroup) scroll).getChildCount(); j++) {
View relative = ((ViewGroup) scroll).getChildAt(j);
for (int k = 0; k < ((ViewGroup) relative).getChildCount(); k++) {
View gridItem = ((ViewGroup) relative).getChildAt(k);
gridItem.setOnFocusChangeListener(new itemFocusChangeListener());
}
}
}
但是,在ViewPager中,是通过viewPager.setAdapter(new MyViewPagerAdapter());把几个布局文件以list的形式绑定到里面,求各位大神支招,遍历viewPager的方法 展开
1个回答
展开全部
你可创建一个集合来保存你的几个布局:private ArrayList<View> pageViews;
pageViews = new ArrayList<View>();
pageViews.add(v1);
pageViews.add(v2);
pageViews.add(v3);
pagerAdapter = new ViewPagerAdapter(pageViews);
这里创建Adapter的时候把这个集合传进去。
然后:uiControl = new UIControlForIntegrate(handler, OnAppPressedListener,
this);
uiControl.setResource(pageViews);//控制ui的地方也把这个集合传进去。这样它们指向的都是一个对象。你可以很方便的控制UI。或者你没有控制UI的类。直接在你的主类里面也可直接用这个集合里的View.
pageViews = new ArrayList<View>();
pageViews.add(v1);
pageViews.add(v2);
pageViews.add(v3);
pagerAdapter = new ViewPagerAdapter(pageViews);
这里创建Adapter的时候把这个集合传进去。
然后:uiControl = new UIControlForIntegrate(handler, OnAppPressedListener,
this);
uiControl.setResource(pageViews);//控制ui的地方也把这个集合传进去。这样它们指向的都是一个对象。你可以很方便的控制UI。或者你没有控制UI的类。直接在你的主类里面也可直接用这个集合里的View.
追问
我是把布局加入到集合里面去的,你的意思是通过对集合pageViews进行遍历来达到对viewpager进行遍历的么?
追答
对,至少我就是这么搞的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询