Android——Fragment使用
来源:互联网 发布:python源代码 编辑:程序博客网 时间:2024/06/05 21:52
一、动态加载Fragment:
getSupportFragmentManager().beginTransaction().add(R.id.main_title, titlefrag).commit();
二、选项卡式Fragment切换(节省资源):
if (fragment != lastfrag) {
if (!fragment.isAdded()) {//判断是否add过
getSupportFragmentManager().beginTransaction().hide(lastfrag).add(R.id.main_body, fragment).commit();
} else {
getSupportFragmentManager().beginTransaction().hide(lastfrag).show(fragment).commit();
}
lastfrag = fragment;
}
示例代码:
一、Fragment
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.kantie, container, false); return view; }
二、MainActivity
import android.content.Intent;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentActivity;import com.example.administrator.wenews.Faxian.Faxian_Act;import com.example.administrator.wenews.InterFaces.SendMessage;import com.example.administrator.wenews.MainFrag.Kantie_Frag;import com.example.administrator.wenews.MainFrag.Main_Bottom_Frag;import com.example.administrator.wenews.MainFrag.Main_Title_Frag;import com.example.administrator.wenews.MainFrag.Weather_Frag;import com.example.administrator.wenews.MainFrag.Wo_Frag;import com.nostra13.universalimageloader.cache.disc.naming.Md5FileNameGenerator;import com.nostra13.universalimageloader.cache.memory.impl.UsingFreqLimitedMemoryCache;import com.nostra13.universalimageloader.core.DisplayImageOptions;import com.nostra13.universalimageloader.core.ImageLoader;import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;import com.nostra13.universalimageloader.core.assist.QueueProcessingType;import com.nostra13.universalimageloader.core.download.BaseImageDownloader;import java.util.ArrayList;import java.util.List;public class MainActivity extends FragmentActivity implements SendMessage { private Fragment titlefrag; private Fragment bottomfrag; private SendMessage title_send; private Fragment lastfrag; private List<Fragment> frags; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initFrag(); } private void initFrag() { //标题 titlefrag = new Main_Title_Frag(); getSupportFragmentManager().beginTransaction().add(R.id.main_title, titlefrag).commit(); title_send = (SendMessage) titlefrag; //底部 bottomfrag = new Main_Bottom_Frag(); getSupportFragmentManager().beginTransaction().add(R.id.main_bottom, bottomfrag).commit(); //内容 frags = new ArrayList<Fragment>(); frags.add(new Kantie_Frag()); frags.add(new Fragment());//发现占用了一个位置 frags.add(new Weather_Frag()); frags.add(new Wo_Frag()); lastfrag = frags.get(0); getSupportFragmentManager().beginTransaction().add(R.id.main_body, lastfrag).commit(); } //底部点击的回调 @Override public void initMessage(String s) { if (s.equals("1")) { Intent intent = new Intent(MainActivity.this, Faxian_Act.class); startActivity(intent); } else { initShow(frags.get(Integer.parseInt(s))); title_send.initMessage(s); } } //资源问题 private void initShow(Fragment fragment) { if (fragment != lastfrag) { if (!fragment.isAdded()) {//判断是否add过 getSupportFragmentManager().beginTransaction().hide(lastfrag).add(R.id.main_body, fragment).commit(); } else { getSupportFragmentManager().beginTransaction().hide(lastfrag).show(fragment).commit(); } lastfrag = fragment; } }}
0 0
- Android——Fragment使用
- Android——Fragment的入门使用
- Android 片段——Fragment的使用
- Android——Fragment
- Android ——fragment
- Android—Fragment生命周期
- Android—viewpage+Fragment
- Android基础—Fragment
- Android Fragment——创建Fragment
- Android Fragment——管理Fragment
- Android Fragment——处理Fragment生命周期
- Fragment初学2——使用Fragment
- [Android Exercise]Fragment新闻客户端例子拆解PART.1—带你记忆Fragment的使用
- [Android Exercise]Fragment新闻客户端例子拆解PART.2—带你记忆Fragment的使用
- [Android Exercise]Fragment新闻客户端例子拆解PART.3—带你记忆Fragment的使用
- Android开发————Fragment的灵活使用
- android笔记4——Fragment的使用
- Android开发——使用fragment仿微信底部菜单栏
- Intel李锐:Hive on Spark解析
- 【iOS开发系列】XIB IBOutlets use strong or weak ?
- hdu 5288 OO’s Sequence(2015多校第一场第1题)枚举因子
- CentOS6.2 下载安装配置 Mongodb3.0.4
- 路径中 斜杠/和反斜杠\ 的区别
- Android——Fragment使用
- mybatis(五)——mybatis表与表之间的关联映射
- ubuntu(一)
- Scala极速入门
- 【C#】C#委托和事件的实例讲解
- 激活任务栏的托盘程序窗口[特殊情况下使用]
- 关闭patchoat
- IOS系统下(iPhone、iPad)滚动条不能用(失效)问题
- 单点故障--名词解释