目录(?)[-]

  1. 小例子运行效果
  2. Pre-step一点准备
  3. Step 1Activity的布局

小例子运行效果

这是一个书名和书简介的例子。运行如下图。Activity由左右两个Fragment组成,左边显示书名列表,右边显示书的简介。用户点击左边的书名,右边fragment则自动显示该书的简介。

Pre-step:一点准备

小例子用于学习fragment,书名和简介用数组进行存贮,放在BooksInfo类中,如下:

public class BooksInfo { 
    public static String TITLES[] = { 
        "Henry IV (1)", 
        "Henry V", 
        "Henry VIII", 
        "Romeo and Juliet", 
        "Hamlet", 
        "The Merchant of Venice", 
        "Othello" 
    }; 
    public static String DIALOGUE[] = { 
        "So shaken as we are, so wan with care,…..", 
        "O for a Muse of fire, that would ascend,……", 
        "I come no more to make you laugh: things now, ……", 
        "Two households, both alike in dignity, ……", 
        "Though yet of Hamlet our dear brother's death …… ", 
        "The quality of mercy is not strain'd, ……", 
        "It is Othello's pleasure, our noble and valiant ……" 
    }; 
}

Step 1:Activity的布局

下面的Activity的layout布局。从小例子看,左边的fragment属于主导,右边的fragment呈现的内容,根据左边所确定,左右两边所占空间的比例为1:2。具体的layout文件fragment_basic.xml如下:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal" > 
    <!-- 设置左边Fragment的id,并直接通过class属性给出该fragement对应的类为TitleFragment,需要注意fragment并不是view,不支持里面子tag,即不支持<fragment …. ><…></fragment>的格式  -->
    <fragment class="com.wei.flowingflying.pro.ProFragment.TitleFragment"
        android:id="@+id/titles" 

        android:layout_weight="1" 
        android:layout_width="0px" 
        android:layout_height="match_parent" />  
     <!-- 注意:这是FrameLayout,不是fragment,是view,右边fragment的呈现有左边fragment的操作决定,不指定对应的类,可以由不同的类来具体实现UI -->
      <FrameLayout android:id="@+id/details" 
            android:layout_weight="2" 
            android:layout_width="0px" 
            android:layout_height="match_parent" /> 
</LinearLayout>

Activity的代码如下:

public class FragmentBasicTest extends Activity{  
    @Override 
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.fragment_basic);  
    }  
     
    //根据用户点击书面,具体实现右边的fragment,暂略,以后补充。 
    public void showDetails(int index){ 
        ……  
    } 
}

本博文涉及的例子代码,可以在Pro Android学习:Fragment中下载。

相关链接: 我的Android开发相关文章

【转】 Pro Android学习笔记(三七):Fragment(2):基础小例子的更多相关文章

  1. 【转】 Pro Android学习笔记(四二):Fragment(7):切换效果

    目录(?)[-] 利用setTransition 利用setCustomAnimations 通过ObjectAnimator自定义动态效果 程序代码的编写 利用fragment transactio ...

  2. 【转】 Pro Android学习笔记(四十):Fragment(5):适应不同屏幕或排版

    目录(?)[-] 设置横排和竖排的不同排版风格 改写代码 对于fragment,经常涉及不同屏幕尺寸和不同的排版风格.我们在基础小例子上做一下改动,在横排的时候,仍是现实左右两个fragment,在竖 ...

  3. 【转】 Pro Android学习笔记(三九):Fragment(4):基础小例子-续

    目录(?)[-] Step 3实现简介显示类DetailFragment 创建实例 编写所需的生命周期代码 Step 4实现showDetailint index如何管理fragment fragme ...

  4. Pro Android学习笔记(一三七):Home Screen Widgets(3):配置Activity

    文章转载仅仅能用于非商业性质,且不能带有虚拟货币.积分.注冊等附加条件.转载须注明出处http://blog.csdn.net/flowingflying/以及作者@恺风Wei. 通过widget定义 ...

  5. 【转】 Pro Android学习笔记(五六):配置变化

    目录(?)[-] Activity的destorycreate过程 Fragment的destorycreate过程 onSaveInstanceState saveFragmentInstanceS ...

  6. Pro Android学习笔记 ActionBar(1):Home图标区

     Pro Android学习笔记(四八):ActionBar(1):Home图标区 2013年03月10日 ⁄ 综合 ⁄ 共 3256字 ⁄ 字号 小 中 大 ⁄ 评论关闭 ActionBar在A ...

  7. 【转】 Pro Android学习笔记(八二):了解Package(1):包和进程

    文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处:http://blog.csdn.net/flowingflying/ 在之前,我们已经学习了如何签发apk,见P ...

  8. 【转】 Pro Android学习笔记(六七):HTTP服务(1):HTTP GET

    目录(?)[-] HTTP GET小例子 简单小例子 出现异常NetworkOnMainThreadException 通过StrictMode进行处理 URL带键值对 Andriod应用可利用ser ...

  9. 【转】 Pro Android学习笔记(五五):调试和分析(3):adb命令、模拟器控制台和StrictMode

    目录(?)[-] adb命令 模拟器Console StrictMode adb命令 我们在学习SQLite的使用,介绍过部分adb命令的使用,见Pro Android学习笔记(五):了解Conten ...

  10. 【转】 Pro Android学习笔记(五二):ActionBar(5):list模式

    可以在action bar中加入spinner的下来菜单,有关spinner,可以参考Pro Android学习笔记(二十):用户界面和控制(8):GridView和Spinner. list的样式和 ...

随机推荐

  1. 【基于rssi室内定位报告】rssi分布情况标识位置

    import matplotlib matplotlib.use('Agg') import numpy as np from numpy import array from matplotlib i ...

  2. 【python】-- 信号量(Semaphore)、event(红绿灯例子)

    信号量(Semaphore) 之前讲的线程锁(互斥锁) 同时只允许一个线程更改数据,而Semaphore是同时允许一定数量的线程更改数据 ,比如厕所有3个坑,那最多只允许3个人上厕所,后面的人只能等里 ...

  3. PAT 1061. 判断题(15)

    判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分. 输入格式: 输入在第一行给出两个不超过100的正整数N和M,分别是学生人数和判断题数量.第二行给出M个不超过5的正 ...

  4. SM30维护视图创建【转】

           在SAP中,经常需要自定义数据库表.而且可能需要人工维护数据库表中的数据,可以通过SM30进行维护数据:但是SM30事务的权限太大,不适宜将SM30直接分配:因此,可以通过给维护表分配事 ...

  5. C#读取excel 找不到可安装的ISAM

    实在没有办法了 就仔细的查看了 一下数据链接字符串: string strConn = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" ...

  6. 【转载】Spring介绍之二

    Spring框架,是进行对象管理,对象关联,解耦的一个中间层框架.SSH(Struts+Spring+Hibernate)三大Spring在中间就起着一个承上启下的作用.好,首先我们先来看一下Spri ...

  7. Linux通过Shell对文件自动进行远程拷贝备份

    在执行计划任务拷贝文件的时候,用scp命令需要输入密码,这里用公共密钥的方式实现密码的自动输入. 具体操作: 要求:把192.168.0.2机上的test.tar拷贝到192.168.0.3机器的上 ...

  8. Kattis - names Palindrome Names 【字符串】

    题目链接 https://open.kattis.com/problems/names 题意 给出一个字符串 有两种操作 0.在字符串的最末尾加一个字符 1.更改字符串中的一个字符 求最少的操作步数使 ...

  9. QCon2016 上海会议汇总(1) - 前端技术实践

    日程传送门:http://2016.qconshanghai.com/schedule 我这里重点总结下前端.移动端.团队管理.研发支撑相关的议题,谈谈我的感受. <Vue 2.0: 渐进式前端 ...

  10. LRC歌词文件读取代码

    /**************************************************/ /*******************-main文件-******************* ...