我有一个视图分页器,其中包含一个带有图像视图的网格视图的片段。我下载图像并将它们放在网格视图上。我可以从我的图像适配器访问视图寻呼机位置吗?
ViewPager
:
pager = (ViewPager)super.findViewById(R.id.viewpager_menu);
FragmentManager fm = getSupportFragmentManager();
Log.d(TAG, "ViewPager adapter created");
this.mPagerAdapter = new MyPagerAdapter(fm);
mPagerAdapter.testText = "TITS";
pager.setAdapter(mPagerAdapter);
ViewPager
适配器getItem
方法:
@Override
public Fragment getItem(int position) {
fragmentPosition = position;
Log.e("PageAdapter", "Creating fragment at: " + position);
DefinedValues.thumbnailInfo.put("activity", DefinedValues.images);
DefinedValues.thumbnailInfo.put("type", "info");
DefinedValues.thumbnailInfo.put("page", position+ 1 + "");
String request = Json.stringToJson(DefinedValues.thumbnailInfo);
DefinedValues.thumbnailInfo.clear();
StringAsyncRetriever net = new StringAsyncRetriever();
net.setListener(MyPagerAdapter.this);
net.execute(request, DefinedValues.GET_DATA);
fragment1 myFragment = new fragment1();
return myFragment;
}
在fragment1
中设置适配器:
View view = inflater.inflate(R.layout.menu1_fragment, container, false);
gridView = (GridView)view.findViewById(R.id.gridview1);
gridView.setAdapter(adapter);
创建片段后, StringAsyncRetriever
会下载有关六个缩略图的信息。完成后,它会创建六个图像,将它们添加到全局容器中,并在为imageView
设置适配器时,相应地下载图像,进行设置。我需要的是访问imageAdapter
中的页码以设置正确的图像。
答案 0 :(得分:0)
vp是viewPager,
static int currentPage;
pageListener = new PageListener();
vp.setOnPageChangeListener(pageListener);
你必须放一页 更改viewPager的侦听器。 viewPager上没有方法 获取当前页面。
private int currentPage;
private static class PageListener extends SimpleOnPageChangeListener{ public void onPageSelected(int position) { Log.i(TAG, "page selected " + position); currentPage = position; } }
或在最新的套餐中,您也可以使用
vp.getCurrentItem()
你可以将currentPage声明为static,然后你可以使用
从适配器中声明它activityname.currentPage;