android-在 viewpager 中如何创建 button onClick 方法

问题描述

在 viewpager 中如何创建 button onClick 方法
我想使用viewpager在按钮点击时Toast一个消息,也想了解更多关于如何访问viewpager中的视图的信息。用的以下的信息,没什么反应。

public class MyPagerAdapter extends PagerAdapter {    @Override    public int getCount() {        return 3;    }    @Override    public Object instantiateItem(final View collection final int position) {         v = new View(collection.getContext());        LayoutInflater inflater =                (LayoutInflater) collection.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);        int resId = 0;        switch (position) {        case 0:            resId = R.layout.cate1;            v = inflater.inflate(R.layout.cate1 null false);            add1 = (Button) v.findViewById(R.id.btnAdd);            add1.setOnClickListener( new OnClickListener() {                public void onClick(View m) {                   Toast.makeText(collection.getContext()click""Toast.LENGTH_LONG).show();                }            });            break;        case 1:            resId = R.layout.cate2;            break;        case 2:            resId = R.layout.cate3;            break;        }        View view = inflater.inflate(resId null);        ((ViewPager) collection).addView(view 0);        return view;    }    @Override    public void destroyItem(final View arg0 final int arg1 final Object arg2) {        ((ViewPager) arg0).removeView((View) arg2);    }    @Override    public boolean isViewFromObject(final View arg0 final Object arg1) {        return arg0 == ((View) arg1);    }    @Override    public void finishUpdate(View arg0) {        // TODO Auto-generated method stub    }    @Override    public void restoreState(Parcelable arg0 ClassLoader arg1) {        // TODO Auto-generated method stub    }    @Override    public Parcelable saveState() {        // TODO Auto-generated method stub        return null;    }    @Override    public void startUpdate(View arg0) {        // TODO Auto-generated method stub    }    }

然后用下面的代码实现button onclick方法,也不对。

v = inflater.inflate(R.layout.cate1 null false);            add1 = (Button) v.findViewById(R.id.btnAdd);            add1.setOnClickListener( new OnClickListener() {                public void onClick(View m) {                   Toast.makeText(collection.getContext()click""Toast.LENGTH_LONG).show();                }            });

add1.setOnClickListener 不能执行,也没有报错。总之,想要实现的button action 没有执行。是什么问题呢?

解决方案

把代码中的

((ViewPager) collection).addView(view 0);    return view;

改成

((ViewPager) collection).addView(v 0);    return v;
时间: 2024-11-03 04:57:10

android-在 viewpager 中如何创建 button onClick 方法的相关文章

android-在 viewpager 中如何实现 Button 的 onClick 方法

问题描述 在 viewpager 中如何实现 Button 的 onClick 方法 我想在viewpaper中,点击按钮弹出Toast信息,并且想知道如何在viewpaper上访问views? 我用的以下的代码,不好用. public class MyPagerAdapter extends PagerAdapter { @Override public int getCount() { return 3; } @Override public Object instantiateItem(f

代码-Android L QuickSetting中增加一个button

问题描述 Android L QuickSetting中增加一个button 按照MTK的提供的文档,我添加了一个按钮,代码是编译过了,但是重启没有没有效果,也没有错误日志,但是恢复出厂设置之后,就报了一个安全的异常, 解决方案 补上日志 Caused by: java.lang.ClassNotFoundException: Didn't find class "com.android.systemui.SystemUIApplication" on path: DexPathLis

Android实现GridView中ImageView动态变换的方法_Android

本文实例讲述了Android实现GridView中ImageView动态变换的方法.分享给大家供大家参考.具体如下: 使用YY影音的时候,发现点击GridView的某一个Item,Item里面的图标会在按下的时候发生变换,变成另外一个图片. 自己写了一个类似的demo,具体步骤如下: 1.创建一个包含Grid的Acitity 2.创建item.xml 里面包含一个imageview和一个textview 3.自定义一个adapter,从baseadapter继承 4.在getView中为每个im

Android实现GridView中ImageView动态变换的方法

本文实例讲述了Android实现GridView中ImageView动态变换的方法.分享给大家供大家参考.具体如下: 使用YY影音的时候,发现点击GridView的某一个Item,Item里面的图标会在按下的时候发生变换,变成另外一个图片. 自己写了一个类似的demo,具体步骤如下: 1.创建一个包含Grid的Acitity 2.创建item.xml 里面包含一个imageview和一个textview 3.自定义一个adapter,从baseadapter继承 4.在getView中为每个im

android编程实现为程序创建快捷方式的方法_Android

本文实例讲述了android编程实现为程序创建快捷方式的方法.分享给大家供大家参考,具体如下: /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //快捷方式的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.st

android编程实现为程序创建快捷方式的方法

本文实例讲述了android编程实现为程序创建快捷方式的方法.分享给大家供大家参考,具体如下: /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //快捷方式的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.st

Android 在viewPager中双指缩放图片双击缩放图片单指拖拽图片的实现思路

我们就把这个问题叫做图片查看器吧,它的主要功能有: 1.双击缩放图片. 2. 双指缩放图片. 3.单指拖拽图片. 为此这个图片查看器需要考虑以下的技术点: 一.双击缩放图片: 1.如果图片高度比屏幕的高度小得多,那么就将图片放大到高度与屏幕高度相等,否则就放大一个特定的倍数. 2.如何判断是否到达这个倍数来停止缩放. 3.判断完且停止放大后,图片可能已经超出了这个倍数需要的大小,如何回归到我们的目标大小. 4.判断完且停止缩小后,图片宽度可能已经小于屏幕宽度,在两边留下了空白,如何重置为原来的大

Android Studio项目中导入开源库的方法_Android

前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,微博上也有人私信我,让我来写写,正好今天回来的比较早,就写写吧.主要介绍一下常见的一些导包的场景. 前言 复制代码 代码如下: --project   //项目目录   |   build.gradle  //项目的gradle配置文件

Android Studio项目中导入开源库的方法

前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,微博上也有人私信我,让我来写写,正好今天回来的比较早,就写写吧.主要介绍一下常见的一些导包的场景. 前言 复制代码 代码如下: --project   //项目目录   |   build.gradle  //项目的gradle配置文件