67、activity中调用fragment内部自定义的方法
fragment:
- /**
- * author: Created by zzl on 15/11/19.
- */
- @SuppressLint("validFragment")
- public class pushMealHistoryFragment extends Fragment {
- Context ctxt;
- View gridALl;
- public pushMealHistoryFragment(Context ctxt)
- {
- this.ctxt = ctxt;
- }
- @Nullable
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- gridALl = inflater.inflate(R.layout.fragment_push_meal_history, null);
- return gridALl;
- }
- public void updateGridview()
- {
- final GridView gridviewHistory = (GridView)gridALl.findViewById(R.id.gridview_pushing_history);
- final Button btnBackground = (Button)gridALl.findViewById(R.id.empty_meal_done_history_gridview);
- ApisManager.getMealPushedHistory(CommonUtils.getFormatDate(0), new ApiCallback() {
- @Override
- public void success(final Object object) {
- getActivity().runOnUiThread(new Runnable() {
- @Override
- public void run() {
- HandlerUtils.showToast(ctxt, "hello,i'm refreshing...");
- List<PushHistoryFood> list = (List<PushHistoryFood>) object;
- PushHistoryAdapterr adapter = new PushHistoryAdapterr(ctxt, list);
- gridviewHistory.setAdapter(adapter);
- if (list.size() == 0) {
- btnBackground.setVisibility(View.VISIBLE);
- } else {
- btnBackground.setVisibility(View.INVISIBLE);
- }
- }
- });
- }
- @Override
- public void error(BaseApi.ApiResponse response) {
- }
- });
- }
- }
如果要在activity中调用上面的fragment的updateGridview方法,demo:
- /**
- * author: Created by zzl on 15/11/19.
- */
- public class PushMealActivity extends BaseActivity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.mealdone);
- init();
- }
- public void init()
- {
- Fragment fragmentPushMealHistory = new pushMealHistoryFragment(ctxt);
- //在这里调用fragmentPushMealHistory的updateGridview方法
- ((pushMealHistoryFragment)fragmentPushMealHistory).updateGridview();
- }
- }
2015.11.27更新:
根本原因是fragmentPushMealHistory定义的类型为Fragment,如果为pushMealHistoryFragment,则不需要做强制转换了
67、activity中调用fragment内部自定义的方法的更多相关文章
- 在Activity中响应ListView内部按钮的点击事件
最近交流群里面有人问到一个问题:如何在Activity中响应ListView内部按钮的点击事件,不要在Adapter中响应? 对于这个问题,我最初给他的解答是,在Adapter中定义一个回调接口,在A ...
- 在Activity中响应ListView内部按钮的点击事件的两种方法!!!
在Activity中响应ListView内部按钮的点击事件的两种方法 转载:http://www.cnblogs.com/ivan-xu/p/4124967.html 最近交流群里面有人问到一个问题: ...
- 在Activity中响应ListView内部按钮的点击事件的两种方法
转载:http://www.cnblogs.com/ivan-xu/p/4124967.html 最近交流群里面有人问到一个问题:如何在Activity中响应ListView内部按钮的点击事件,不要在 ...
- Android学习之在Adapter中调用Fragment
•前言 在学习<第一行代码>,4.5 小节--一个简易版的新闻应用的时候: 在为 RecyclerView 创建适配器的时候: 作者直接在 NewsTitleFragment.java 中 ...
- JavaScript文件中调用AngularJS内部方法或改变$scope变量
需要在其他JavaScript文件中调用AngularJS内部方法或改变$scope变量,同时还要保持双向数据绑定: 首先获取AngularJS application: 方法一:通过controll ...
- [Xcode 实际操作]九、实用进阶-(6)在Swift文件中调用Object-C的类和方法
目录:[Swift]Xcode实际操作 本文将演示在Swift文件中调用Object-C的类和方法. 在项目文件夹[DemoApp]上点击鼠标右键 ->[New File]创建一个Object- ...
- Android在Activity中与Fragment中创建自定义菜单的区别
区别就在这里,Activity中添加菜单要这样: public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R ...
- 学习安卓开发[2] - 在Activity中托管Fragment
目录 在上一篇学习安卓开发[1]-程序结构.Activity生命周期及页面通信中,学习了Activity的一些基础应用,基于这些知识,可以构建一些简单的APP了,但这还远远不够,本节会学习如何使用Ac ...
- Android ViewPager+Fragment 在Activity中获取Fragment的控件
如果ViewPager+Fragment实现Tab切换,在activity中利用adapter.getItem获取到fragment然后再根据fragment.的方法获取控件 //隐藏求租,以下代码用 ...
随机推荐
- [转]linux远程登入不需要密码
如何通过一台linux ssh远程其他linux服务器时,不要输入密码,可以自动登入.提高远程效率,不用记忆各台服务器的密码. 工具/原料 ssh,ssh-keygen,scp 方法/步骤 ...
- jq动态增加的button标签click回调失效的问题,即动态增加的button标签绑定事件$("button.class").click(function)无效
对于新增加的页面元素,改变了页面结构,如果是使用老办法$("button.class").click(function)去监听新的button标签事件,会失效. 笔者的应用是文字的 ...
- 更新KB915597补丁后导致“您的windows副本不是正版”的解决方案
更新KB915597补丁后导致“您的windows副本不是正版”的解决方案 解决方法: 运行cw.exe(https://pan.lanzou.com/i05ya8h),直至提示成功: 重新启动操作系 ...
- WIN7_X64连接远程Oracle数据库
当使用微软提供的驱动:Provider=MSDAORA时,要使用32位的Oracle客户端,不然会报错! 下载:Oracle Database Instant Client 11g x86
- 撸了个 django 数据迁移工具 django-supertube
撸了个 django 数据迁移工具 django-supertube 支持字段映射和动态字段转化. 欢迎 star,issue https://github.com/FingerLiu/django- ...
- iOS 3DTouch 的开发套路大全
今天休息,先来无事就自己看了一下,关于3d touch,看完后自己有动手尝试了一下,感觉也并不是很难, 经过大量的搜索,目前为止,发现有三种实现方式: 第一种:info文件中添加字段 这种方式,最为直 ...
- 基础I/O
基础IO: c库文件IO操作接口:(详细查看c语言中的文件操作函数总结:https://www.cnblogs.com/cuckoo-/p/10560640.html) fopen 打开文件 fclo ...
- IntelliJ IDEA中激活JRebel插件
1. 下载激活软件:https://github.com/ilanyu/ReverseProxy/releases/tag/v1.0 我下载的是 2. 双击文件运行 3. 点击change licen ...
- windows 安装nodejs及配置服务
一.什么是nodejs Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度非常快,性能非常好.N ...
- CentOS7下Mysql5.7安装
下载并安装MySQL官方的 Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.no ...