解决ViewPager.OnPageChangeListener 和 OnClickListener 冲突的有关问题
来源:互联网 发布:围棋记谱软件安卓版 编辑:程序博客网 时间:2024/06/07 00:17
解决ViewPager.OnPageChangeListener 和 OnClickListener 冲突的问题
如果这两种监听事件同时存在
那么直接让paperView 设置这两种监听 是不会响应点击事件的
那么想通过点击图片返回原页面 就成为泡影
其实只要把OnClick事件 加载到 paperView 要加载的 view 组的view 上 就可以实现该功能
听起来有但饶,那么上代码简要代码如下:
public class FriendsCricleImgDetailActivity extends BaseActivity { private ArrayList<View> listViews = null; private ViewPager pager; private ImgShowAdapter adapter; private int count; private RelativeLayout photo_relativeLayout; /** * 对应ID图片数组 */ private List<FriendsCricleImageListObject> list = new ArrayList<>(); /** * 选中的ID */ private int selectNum = 0; /** * 选中的图片索引 */ private TextView imgIndex; private TextView imgBack; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_friends_cricle_img_detail); init(); } /** * 初始化 */ private void init() { photo_relativeLayout = (RelativeLayout) findViewById(R.id.photo_relativeLayout); imgIndex = (TextView) findViewById(R.id.imgIndex); imgBack = (TextView) findViewById(R.id.imgBack); imgBack.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }); pager = (ViewPager) findViewById(R.id.viewpager); photo_relativeLayout.setBackgroundColor(0x70000000); pager.setOnPageChangeListener(pageChangeListener); list = (List<FriendsCricleImageListObject>) getIntent().getSerializableExtra("imgList"); selectNum = getIntent().getIntExtra("selectNum", 0); //初始化viewpaper中用到的view for (int i = 0; i < list.size(); i++) { initListViews(list.get(i).getImg()); } adapter = new ImgShowAdapter(listViews);// 构造adapter pager.setAdapter(adapter);// 设置适配器 pager.setCurrentItem(selectNum);//进入的时候 默认显示点击的那张图 imgIndex.setText((selectNum + 1) + "/" + list.size()); } /** * 初始化图片view 用于添加到viewPaper * * @param imgurl */ private void initListViews(String imgurl) { if (listViews == null) listViews = new ArrayList<View>(); ImageView img = new ImageView(this);// 构造textView对象 img.setBackgroundColor(0xff000000); img.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT)); ImageLoader.getInstance().displayImage(imgurl, img, BaseApp.getFriendsCricleDisplayImageOptions()); img.setOnClickListener(listener); listViews.add(img);// 添加view } /** * 点击事件必须加载图片上 方可奏效 */ View.OnClickListener listener = new View.OnClickListener() { @Override public void onClick(View v) { finish(); } }; /** * 滑动事件监听 */ private ViewPager.OnPageChangeListener pageChangeListener = new ViewPager.OnPageChangeListener() { public void onPageSelected(int arg0) {// 页面选择响应函数 count = arg0; imgIndex.setText((count + 1) + "/" + list.size());//动态是是 当前是第几张图片 } public void onPageScrolled(int arg0, float arg1, int arg2) {// 滑动中。。。 } public void onPageScrollStateChanged(int arg0) {// 滑动状态改变 int x = arg0; } };}
http://www.myexception.cn/mobile/1976244.html
0 0
- 解决ViewPager.OnPageChangeListener 和 OnClickListener 冲突的有关问题
- 解决ViewPager.OnPageChangeListener 和 OnClickListener 冲突的问题
- onTouchListener和onClickListener的冲突问题
- View.onClickListener和DialogInterface.onClickListener冲突问题
- 自定义viewpager解决listview和viewpager滑动冲突的问题
- 解决onTouchListener和onClickListener冲突
- 【Android开发】解决不同的OnClickListener冲突的问题
- 解决ScrollView嵌套viewpager的冲突问题
- 解决viewpager嵌套viewpager和其他view 冲突问题
- 重写viewpager解决scrollview 和viewpager冲突问题
- View OnclickListener与new DialogInterface.OnClickListener()冲突的问题
- ViewPager的onPageChangeListener总结
- ViewPager.OnPageChangeListener的使用
- 解决 HorizontalScrollView 和 ViewPager 的滑动冲突
- 解决ViewPager和SlidingPaneLayout的事件冲突
- 导包View.OnClickListener和DialogInterface.OnClickListener冲突的解决方案
- 导包View.OnClickListener和DialogInterface.OnClickListener冲突的解决方案
- 导包View.OnClickListener和DialogInterface.OnClickListener冲突的解决方案
- Ubuntu系统上SVN服务器的安装和配置
- 垃圾收集器
- easy-ui之datagrid 单元格样式设置
- java保留4位小数
- Windows 08R2 IIS网站架设
- 解决ViewPager.OnPageChangeListener 和 OnClickListener 冲突的有关问题
- 文件管理器源码分析(一)
- 出轨后身体留下的六个特征
- 第八届中国云计算大会发来贺电 | 有容云将作为【云计算优秀项目】特邀嘉宾出席
- 关于DBN的理解
- Mysql的列索引和多列索引
- 约瑟夫问题
- Android相对布局(RelativeLayout)
- 第六章: types and declarations