欢迎使用CSDN-markdown编辑器
2015-06-29 20:34
267 查看
Android在Adapter里面调用Activity的方法/变量
方法1:
Activity中有个Popupwindow.
想在Adapter中的getView中设置Checbox的点击事件时,就显示与隐藏这个Popupwindow
但是因为Adapter与Activity不是同一个类,所以操作有点麻烦..
————————–分割线——————————————–
类: Adapter 继承 BaseAdapter
类:Activity 继承Activity
Adapter中————————–
WeakReference weak; // 定义弱引用变量
public Adapter(Context context){
this.weak = new WeakReference((Activity)context);
……..
}
getView 方法中
checkbox的监听器中
final Ativity activity = weak.get();
activity.**(); // /// // 这里调用Activity中的方法////////////////////////////
方法2:
——————————————-一直是用上面的方法,但是太复杂了。这几天别人一说才知道还有一种更加简单的方法———————-
红色代码就是调用的部分。
Activity:
public class MyActivity extends Activity
{
public void test(){};
public void test(int position){}
}
BaseAdater:
public class MyBaseAdapter extends BaseAdapter{
MyActivity context;
public MyBaseAdapter(MyActivity context){
this.context = context;
}
//其他函数中调用MyActivity的方法。
context.test();
context.text(1);
}
方法3:
使用广播。
方法1:
Activity中有个Popupwindow.
想在Adapter中的getView中设置Checbox的点击事件时,就显示与隐藏这个Popupwindow
但是因为Adapter与Activity不是同一个类,所以操作有点麻烦..
————————–分割线——————————————–
类: Adapter 继承 BaseAdapter
类:Activity 继承Activity
Adapter中————————–
WeakReference weak; // 定义弱引用变量
public Adapter(Context context){
this.weak = new WeakReference((Activity)context);
……..
}
getView 方法中
checkbox的监听器中
final Ativity activity = weak.get();
activity.**(); // /// // 这里调用Activity中的方法////////////////////////////
方法2:
——————————————-一直是用上面的方法,但是太复杂了。这几天别人一说才知道还有一种更加简单的方法———————-
红色代码就是调用的部分。
Activity:
public class MyActivity extends Activity
{
public void test(){};
public void test(int position){}
}
BaseAdater:
public class MyBaseAdapter extends BaseAdapter{
MyActivity context;
public MyBaseAdapter(MyActivity context){
this.context = context;
}
//其他函数中调用MyActivity的方法。
context.test();
context.text(1);
}
方法3:
使用广播。
相关文章推荐
- iOS刷新某个cell时候crash
- 数学之杨辉三角
- ARM基础知识(6.16)
- 牛客网(搜狗2015 C++工程师笔试题)
- 浅谈Docker隔离性和安全性
- java学习02--变量
- 计算机系统
- [2015.6.28] OI刷题记录
- ubuntu(linux)下source、sh、bash、./执行脚本的区别
- 网易新闻评论爬虫(python+selenium+PhantomJS)
- 自学STM32---GPIO
- 按下标方式提取Dictionary的值
- Linux服务器的最大内存和CPU数
- docker网络
- iOS开发学习实例之六---瀑布流
- Android调用相机并将照片存储到sd卡上
- 可视化系列论文【INFUSE: Interactive Feature Selection for Predictive Modeling of High Dimensional Data】
- Ubuntu怎么设置root用户的密码
- CentOS7 桥接网络配置
- linux上nginx安装和使用