Android怎样获取ViewPager当前页卡的布局View?
因为我的页卡数目不固定但是都是相同的布局所以定义了ArrayList<View>listview;count统计页卡数privatevoidinitListViews(i...
因为我的页卡数目不固定 但是都是相同的布局 所以定义了ArrayList<View> listview;
count统计页卡数
private void initListViews(int count) {
if (listViews == null)
listViews = new ArrayList<View>();
LayoutInflater mInflater = getLayoutInflater();
View vv=mInflater.inflate(R.layout.viewpage, null);
listViews.add(vv);// 添加view
if (listViews.size() == 1)
//我自己加的获取ViewPager当前页卡的view,这样的结果是,往后翻页操作view没问题,
//往前翻页,获取的View进行的操作就有问题,我要怎要获取呢?
{
view1 = vv;
} else
{
view1 = listViews.get(listViews.size() - 2);
}
}
private OnPageChangeListener pageChangeListener = new OnPageChangeListener() {
public void onPageSelected(int arg0) {// 页面选择响应函数
// 如果需要实现页面滑动时动态添加 请在此判断arg0的值
// 当然此方式在必须在初始化ViewPager的时候给的页数必须>2
// 因为给1页的话 ViewPager是响应不了此函数的
// 例:
if (arg0 == pager.getAdapter().getCount() - 1) {// 滑动到最后一页
{count++;
initListViews(count);// listViews添加数据
adapter.setListViews(listViews);// 重构adapter对象
adapter.notifyDataSetChanged();// 刷新
}
}
if (mToast == null)
{
mToast = Toast.makeText(ControlActivity.this, "翻到了第"
+ (arg0 + 1) + "个窗口", Toast.LENGTH_SHORT);
windowsID = String.valueOf(arg0 + 1);
} else
{
mToast.setText("翻到了第" + (arg0 + 1) + "个窗口");
windowsID = String.valueOf(arg0 + 1);
}
mToast.show();
}
public void onPageScrolled(int arg0, float arg1, int arg2)
{// 滑动中。。。
}
public void onPageScrollStateChanged(int arg0)
{// 滑动状态改变
}
}; 展开
count统计页卡数
private void initListViews(int count) {
if (listViews == null)
listViews = new ArrayList<View>();
LayoutInflater mInflater = getLayoutInflater();
View vv=mInflater.inflate(R.layout.viewpage, null);
listViews.add(vv);// 添加view
if (listViews.size() == 1)
//我自己加的获取ViewPager当前页卡的view,这样的结果是,往后翻页操作view没问题,
//往前翻页,获取的View进行的操作就有问题,我要怎要获取呢?
{
view1 = vv;
} else
{
view1 = listViews.get(listViews.size() - 2);
}
}
private OnPageChangeListener pageChangeListener = new OnPageChangeListener() {
public void onPageSelected(int arg0) {// 页面选择响应函数
// 如果需要实现页面滑动时动态添加 请在此判断arg0的值
// 当然此方式在必须在初始化ViewPager的时候给的页数必须>2
// 因为给1页的话 ViewPager是响应不了此函数的
// 例:
if (arg0 == pager.getAdapter().getCount() - 1) {// 滑动到最后一页
{count++;
initListViews(count);// listViews添加数据
adapter.setListViews(listViews);// 重构adapter对象
adapter.notifyDataSetChanged();// 刷新
}
}
if (mToast == null)
{
mToast = Toast.makeText(ControlActivity.this, "翻到了第"
+ (arg0 + 1) + "个窗口", Toast.LENGTH_SHORT);
windowsID = String.valueOf(arg0 + 1);
} else
{
mToast.setText("翻到了第" + (arg0 + 1) + "个窗口");
windowsID = String.valueOf(arg0 + 1);
}
mToast.show();
}
public void onPageScrolled(int arg0, float arg1, int arg2)
{// 滑动中。。。
}
public void onPageScrollStateChanged(int arg0)
{// 滑动状态改变
}
}; 展开
1个回答
2014-03-17
展开全部
View currentView = pager.getCurrentItem();
更多追问追答
追问
pager.getCurrentItem()是获取当前页卡的index
追答
你都获取到index了,还不能获取到view吗……你从adapter里面取就好了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询