2、fragment的使用封裝(下)

轉載請註明出處:http://blog.csdn.net/q649381130/article/details/51346551

1、寫在前面的話

上一篇已經介紹了fragment的使用封裝,讀者可以點擊鏈接查看fragment的使用封裝(上):http://blog.csdn.net/q649381130/article/details/51340544

本文主要採用其他方式,實現對fragment的添加切換操作。效果圖就不上了,跟上篇一樣。

2、傳統方式

在Activity中我們添加一下常量,表示對於fragment的tag標示,用枚舉一樣的效果。

<code class="hljs java has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_HOME = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"設置主頁"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_ALBUM = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"相冊"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_COLLECT = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"收藏"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_WALLET = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"錢包"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_COUPON = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"卡劵"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_FACE = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"表情"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_PERSON = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"個人"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_SYS = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"系統設置"</span>;</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li></ul>

提供一個工廠方法,根據傳入的tag進行fragment對象的創建

<code class="hljs cs has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> Fragment <span class="hljs-title" style="box-sizing: border-box; ">fragmentFactory</span>(String tag)
    {
        Fragment fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">switch</span> (tag)
        {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_HOME:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//主頁</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingHomeFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_ALBUM:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//相冊</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingAlbumFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_COLLECT:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//收藏</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCollectionFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_COUPON:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//卡劵</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCouponFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_FACE:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//表情</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingFaceFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_PERSON:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//個人</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingPersonFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_WALLET:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//錢包</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingWalletFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_SYS:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">//系統設置</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">default</span>:

            Log.e(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"fragmentFactory"</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"找不到指定tag+["</span>+tag+<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"]+的fragment"</span>);

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        }

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span> fragment;
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li><li style="box-sizing: border-box; padding: 0px 5px; ">46</li><li style="box-sizing: border-box; padding: 0px 5px; ">47</li><li style="box-sizing: border-box; padding: 0px 5px; ">48</li><li style="box-sizing: border-box; padding: 0px 5px; ">49</li><li style="box-sizing: border-box; padding: 0px 5px; ">50</li><li style="box-sizing: border-box; padding: 0px 5px; ">51</li><li style="box-sizing: border-box; padding: 0px 5px; ">52</li><li style="box-sizing: border-box; padding: 0px 5px; ">53</li><li style="box-sizing: border-box; padding: 0px 5px; ">54</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li><li style="box-sizing: border-box; padding: 0px 5px; ">46</li><li style="box-sizing: border-box; padding: 0px 5px; ">47</li><li style="box-sizing: border-box; padding: 0px 5px; ">48</li><li style="box-sizing: border-box; padding: 0px 5px; ">49</li><li style="box-sizing: border-box; padding: 0px 5px; ">50</li><li style="box-sizing: border-box; padding: 0px 5px; ">51</li><li style="box-sizing: border-box; padding: 0px 5px; ">52</li><li style="box-sizing: border-box; padding: 0px 5px; ">53</li><li style="box-sizing: border-box; padding: 0px 5px; ">54</li></ul>

提供一個切換顯示fragment的方法,傳入tag值,根據tag值顯示對應的頁面。首先我們先去棧中查找看是否存在對應的fragment,如果已經存在就直接顯示隱藏,否則使用工廠方法創建實例在add進來,add的時候將tag與新建的fragment對象對應起來。

<code class="hljs lasso has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-literal" style="color: rgb(0, 102, 102); box-sizing: border-box; ">void</span> replaceFragment(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">String</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">tag</span>)
    {
        Fragment fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box; ">=</span> mFragmentManager<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>findFragmentByTag(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">tag</span>);

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box; ">!=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">null</span>)
        {
            mFragmentManager<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>beginTransaction()
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>show(fragment)
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>hide(mCurrentFragment)
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>commitAllowingStateLoss();
        } <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">else</span>
        {
            fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box; ">=</span> fragmentFactory(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">tag</span>);

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box; ">==</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">null</span>)
            {
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span>;
            }

            mFragmentManager<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>beginTransaction()
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>add(R<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>id<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>rl_container_main, fragment, <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">tag</span>)
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>hide(mCurrentFragment)
                    <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box; ">.</span>commit();
        }

        mCurrentFragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box; ">=</span> fragment;
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li></ul>

完整代碼業務邏輯還是很簡單的,這裏我們重寫了onBackpress()方法,控制當用戶點擊返回鍵時,如果當前頁面是列表頁則退出Activity,否則切換顯示列表頁面。

當然還要重寫onSaveInstanceState(),防止重複顯示的bug。具體解釋看我的上一篇博客。

<code class="hljs java has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-class" style="box-sizing: border-box; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">class</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">MainActivity</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">extends</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">FragmentActivity</span>
{</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> FragmentManager mFragmentManager;

    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 當前顯示的fragment</span>
    Fragment mCurrentFragment;

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_HOME = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"設置主頁"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_ALBUM = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"相冊"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_COLLECT = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"收藏"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_WALLET = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"錢包"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_COUPON = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"卡劵"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_FACE = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"表情"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_PERSON = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"個人"</span>;
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> String FRAM_SET_SYS = <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"系統設置"</span>;

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">protected</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onCreate</span>(Bundle savedInstanceState)
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">super</span>.onCreate(savedInstanceState);
        setContentView(R.layout.empty_activity);

        mFragmentManager = getSupportFragmentManager();

        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 添加主頁面</span>
        SettingHomeFragment settingHomeFragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingHomeFragment();
        mFragmentManager.beginTransaction()
                .add(R.id.rl_container_main, settingHomeFragment, FRAM_SET_HOME)
                .commitAllowingStateLoss();

        mCurrentFragment = settingHomeFragment;
    }

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onBackPressed</span>()
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (mCurrentFragment <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">instanceof</span> SettingHomeFragment)
        {
            finish();
        } <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">else</span>
        {
            replaceFragment(FRAM_SET_HOME);
        }
    }

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">protected</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onSaveInstanceState</span>(Bundle arg0)
    {
        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// super.onSaveInstanceState(arg0);</span>
    }

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">replaceFragment</span>(String tag)
    {
        Fragment fragment = mFragmentManager.findFragmentByTag(tag);

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment != <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>)
        {
            mFragmentManager.beginTransaction()
                    .show(fragment)
                    .hide(mCurrentFragment)
                    .commitAllowingStateLoss();
        } <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">else</span>
        {
            fragment = fragmentFactory(tag);

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment == <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>)
            {
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span>;
            }

            mFragmentManager.beginTransaction()
                    .add(R.id.rl_container_main, fragment, tag)
                    .hide(mCurrentFragment)
                    .commit();
        }

        mCurrentFragment = fragment;
    }

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> Fragment <span class="hljs-title" style="box-sizing: border-box; ">fragmentFactory</span>(String tag)
    {
        Fragment fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">switch</span> (tag)
        {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_HOME:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 主頁</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingHomeFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_ALBUM:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 相冊</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingAlbumFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_COLLECT:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 收藏</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCollectionFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_COUPON:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 卡劵</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCouponFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_FACE:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 表情</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingFaceFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_PERSON:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 個人</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingPersonFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_WALLET:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 錢包</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingWalletFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> FRAM_SET_SYS:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 系統設置</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">default</span>:

            Log.e(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"fragmentFactory"</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"找不到指定tag+["</span> + tag + <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">"]+的fragment"</span>);

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        }

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span> fragment;
    }
}</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li><li style="box-sizing: border-box; padding: 0px 5px; ">46</li><li style="box-sizing: border-box; padding: 0px 5px; ">47</li><li style="box-sizing: border-box; padding: 0px 5px; ">48</li><li style="box-sizing: border-box; padding: 0px 5px; ">49</li><li style="box-sizing: border-box; padding: 0px 5px; ">50</li><li style="box-sizing: border-box; padding: 0px 5px; ">51</li><li style="box-sizing: border-box; padding: 0px 5px; ">52</li><li style="box-sizing: border-box; padding: 0px 5px; ">53</li><li style="box-sizing: border-box; padding: 0px 5px; ">54</li><li style="box-sizing: border-box; padding: 0px 5px; ">55</li><li style="box-sizing: border-box; padding: 0px 5px; ">56</li><li style="box-sizing: border-box; padding: 0px 5px; ">57</li><li style="box-sizing: border-box; padding: 0px 5px; ">58</li><li style="box-sizing: border-box; padding: 0px 5px; ">59</li><li style="box-sizing: border-box; padding: 0px 5px; ">60</li><li style="box-sizing: border-box; padding: 0px 5px; ">61</li><li style="box-sizing: border-box; padding: 0px 5px; ">62</li><li style="box-sizing: border-box; padding: 0px 5px; ">63</li><li style="box-sizing: border-box; padding: 0px 5px; ">64</li><li style="box-sizing: border-box; padding: 0px 5px; ">65</li><li style="box-sizing: border-box; padding: 0px 5px; ">66</li><li style="box-sizing: border-box; padding: 0px 5px; ">67</li><li style="box-sizing: border-box; padding: 0px 5px; ">68</li><li style="box-sizing: border-box; padding: 0px 5px; ">69</li><li style="box-sizing: border-box; padding: 0px 5px; ">70</li><li style="box-sizing: border-box; padding: 0px 5px; ">71</li><li style="box-sizing: border-box; padding: 0px 5px; ">72</li><li style="box-sizing: border-box; padding: 0px 5px; ">73</li><li style="box-sizing: border-box; padding: 0px 5px; ">74</li><li style="box-sizing: border-box; padding: 0px 5px; ">75</li><li style="box-sizing: border-box; padding: 0px 5px; ">76</li><li style="box-sizing: border-box; padding: 0px 5px; ">77</li><li style="box-sizing: border-box; padding: 0px 5px; ">78</li><li style="box-sizing: border-box; padding: 0px 5px; ">79</li><li style="box-sizing: border-box; padding: 0px 5px; ">80</li><li style="box-sizing: border-box; padding: 0px 5px; ">81</li><li style="box-sizing: border-box; padding: 0px 5px; ">82</li><li style="box-sizing: border-box; padding: 0px 5px; ">83</li><li style="box-sizing: border-box; padding: 0px 5px; ">84</li><li style="box-sizing: border-box; padding: 0px 5px; ">85</li><li style="box-sizing: border-box; padding: 0px 5px; ">86</li><li style="box-sizing: border-box; padding: 0px 5px; ">87</li><li style="box-sizing: border-box; padding: 0px 5px; ">88</li><li style="box-sizing: border-box; padding: 0px 5px; ">89</li><li style="box-sizing: border-box; padding: 0px 5px; ">90</li><li style="box-sizing: border-box; padding: 0px 5px; ">91</li><li style="box-sizing: border-box; padding: 0px 5px; ">92</li><li style="box-sizing: border-box; padding: 0px 5px; ">93</li><li style="box-sizing: border-box; padding: 0px 5px; ">94</li><li style="box-sizing: border-box; padding: 0px 5px; ">95</li><li style="box-sizing: border-box; padding: 0px 5px; ">96</li><li style="box-sizing: border-box; padding: 0px 5px; ">97</li><li style="box-sizing: border-box; padding: 0px 5px; ">98</li><li style="box-sizing: border-box; padding: 0px 5px; ">99</li><li style="box-sizing: border-box; padding: 0px 5px; ">100</li><li style="box-sizing: border-box; padding: 0px 5px; ">101</li><li style="box-sizing: border-box; padding: 0px 5px; ">102</li><li style="box-sizing: border-box; padding: 0px 5px; ">103</li><li style="box-sizing: border-box; padding: 0px 5px; ">104</li><li style="box-sizing: border-box; padding: 0px 5px; ">105</li><li style="box-sizing: border-box; padding: 0px 5px; ">106</li><li style="box-sizing: border-box; padding: 0px 5px; ">107</li><li style="box-sizing: border-box; padding: 0px 5px; ">108</li><li style="box-sizing: border-box; padding: 0px 5px; ">109</li><li style="box-sizing: border-box; padding: 0px 5px; ">110</li><li style="box-sizing: border-box; padding: 0px 5px; ">111</li><li style="box-sizing: border-box; padding: 0px 5px; ">112</li><li style="box-sizing: border-box; padding: 0px 5px; ">113</li><li style="box-sizing: border-box; padding: 0px 5px; ">114</li><li style="box-sizing: border-box; padding: 0px 5px; ">115</li><li style="box-sizing: border-box; padding: 0px 5px; ">116</li><li style="box-sizing: border-box; padding: 0px 5px; ">117</li><li style="box-sizing: border-box; padding: 0px 5px; ">118</li><li style="box-sizing: border-box; padding: 0px 5px; ">119</li><li style="box-sizing: border-box; padding: 0px 5px; ">120</li><li style="box-sizing: border-box; padding: 0px 5px; ">121</li><li style="box-sizing: border-box; padding: 0px 5px; ">122</li><li style="box-sizing: border-box; padding: 0px 5px; ">123</li><li style="box-sizing: border-box; padding: 0px 5px; ">124</li><li style="box-sizing: border-box; padding: 0px 5px; ">125</li><li style="box-sizing: border-box; padding: 0px 5px; ">126</li><li style="box-sizing: border-box; padding: 0px 5px; ">127</li><li style="box-sizing: border-box; padding: 0px 5px; ">128</li><li style="box-sizing: border-box; padding: 0px 5px; ">129</li><li style="box-sizing: border-box; padding: 0px 5px; ">130</li><li style="box-sizing: border-box; padding: 0px 5px; ">131</li><li style="box-sizing: border-box; padding: 0px 5px; ">132</li><li style="box-sizing: border-box; padding: 0px 5px; ">133</li><li style="box-sizing: border-box; padding: 0px 5px; ">134</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li><li style="box-sizing: border-box; padding: 0px 5px; ">46</li><li style="box-sizing: border-box; padding: 0px 5px; ">47</li><li style="box-sizing: border-box; padding: 0px 5px; ">48</li><li style="box-sizing: border-box; padding: 0px 5px; ">49</li><li style="box-sizing: border-box; padding: 0px 5px; ">50</li><li style="box-sizing: border-box; padding: 0px 5px; ">51</li><li style="box-sizing: border-box; padding: 0px 5px; ">52</li><li style="box-sizing: border-box; padding: 0px 5px; ">53</li><li style="box-sizing: border-box; padding: 0px 5px; ">54</li><li style="box-sizing: border-box; padding: 0px 5px; ">55</li><li style="box-sizing: border-box; padding: 0px 5px; ">56</li><li style="box-sizing: border-box; padding: 0px 5px; ">57</li><li style="box-sizing: border-box; padding: 0px 5px; ">58</li><li style="box-sizing: border-box; padding: 0px 5px; ">59</li><li style="box-sizing: border-box; padding: 0px 5px; ">60</li><li style="box-sizing: border-box; padding: 0px 5px; ">61</li><li style="box-sizing: border-box; padding: 0px 5px; ">62</li><li style="box-sizing: border-box; padding: 0px 5px; ">63</li><li style="box-sizing: border-box; padding: 0px 5px; ">64</li><li style="box-sizing: border-box; padding: 0px 5px; ">65</li><li style="box-sizing: border-box; padding: 0px 5px; ">66</li><li style="box-sizing: border-box; padding: 0px 5px; ">67</li><li style="box-sizing: border-box; padding: 0px 5px; ">68</li><li style="box-sizing: border-box; padding: 0px 5px; ">69</li><li style="box-sizing: border-box; padding: 0px 5px; ">70</li><li style="box-sizing: border-box; padding: 0px 5px; ">71</li><li style="box-sizing: border-box; padding: 0px 5px; ">72</li><li style="box-sizing: border-box; padding: 0px 5px; ">73</li><li style="box-sizing: border-box; padding: 0px 5px; ">74</li><li style="box-sizing: border-box; padding: 0px 5px; ">75</li><li style="box-sizing: border-box; padding: 0px 5px; ">76</li><li style="box-sizing: border-box; padding: 0px 5px; ">77</li><li style="box-sizing: border-box; padding: 0px 5px; ">78</li><li style="box-sizing: border-box; padding: 0px 5px; ">79</li><li style="box-sizing: border-box; padding: 0px 5px; ">80</li><li style="box-sizing: border-box; padding: 0px 5px; ">81</li><li style="box-sizing: border-box; padding: 0px 5px; ">82</li><li style="box-sizing: border-box; padding: 0px 5px; ">83</li><li style="box-sizing: border-box; padding: 0px 5px; ">84</li><li style="box-sizing: border-box; padding: 0px 5px; ">85</li><li style="box-sizing: border-box; padding: 0px 5px; ">86</li><li style="box-sizing: border-box; padding: 0px 5px; ">87</li><li style="box-sizing: border-box; padding: 0px 5px; ">88</li><li style="box-sizing: border-box; padding: 0px 5px; ">89</li><li style="box-sizing: border-box; padding: 0px 5px; ">90</li><li style="box-sizing: border-box; padding: 0px 5px; ">91</li><li style="box-sizing: border-box; padding: 0px 5px; ">92</li><li style="box-sizing: border-box; padding: 0px 5px; ">93</li><li style="box-sizing: border-box; padding: 0px 5px; ">94</li><li style="box-sizing: border-box; padding: 0px 5px; ">95</li><li style="box-sizing: border-box; padding: 0px 5px; ">96</li><li style="box-sizing: border-box; padding: 0px 5px; ">97</li><li style="box-sizing: border-box; padding: 0px 5px; ">98</li><li style="box-sizing: border-box; padding: 0px 5px; ">99</li><li style="box-sizing: border-box; padding: 0px 5px; ">100</li><li style="box-sizing: border-box; padding: 0px 5px; ">101</li><li style="box-sizing: border-box; padding: 0px 5px; ">102</li><li style="box-sizing: border-box; padding: 0px 5px; ">103</li><li style="box-sizing: border-box; padding: 0px 5px; ">104</li><li style="box-sizing: border-box; padding: 0px 5px; ">105</li><li style="box-sizing: border-box; padding: 0px 5px; ">106</li><li style="box-sizing: border-box; padding: 0px 5px; ">107</li><li style="box-sizing: border-box; padding: 0px 5px; ">108</li><li style="box-sizing: border-box; padding: 0px 5px; ">109</li><li style="box-sizing: border-box; padding: 0px 5px; ">110</li><li style="box-sizing: border-box; padding: 0px 5px; ">111</li><li style="box-sizing: border-box; padding: 0px 5px; ">112</li><li style="box-sizing: border-box; padding: 0px 5px; ">113</li><li style="box-sizing: border-box; padding: 0px 5px; ">114</li><li style="box-sizing: border-box; padding: 0px 5px; ">115</li><li style="box-sizing: border-box; padding: 0px 5px; ">116</li><li style="box-sizing: border-box; padding: 0px 5px; ">117</li><li style="box-sizing: border-box; padding: 0px 5px; ">118</li><li style="box-sizing: border-box; padding: 0px 5px; ">119</li><li style="box-sizing: border-box; padding: 0px 5px; ">120</li><li style="box-sizing: border-box; padding: 0px 5px; ">121</li><li style="box-sizing: border-box; padding: 0px 5px; ">122</li><li style="box-sizing: border-box; padding: 0px 5px; ">123</li><li style="box-sizing: border-box; padding: 0px 5px; ">124</li><li style="box-sizing: border-box; padding: 0px 5px; ">125</li><li style="box-sizing: border-box; padding: 0px 5px; ">126</li><li style="box-sizing: border-box; padding: 0px 5px; ">127</li><li style="box-sizing: border-box; padding: 0px 5px; ">128</li><li style="box-sizing: border-box; padding: 0px 5px; ">129</li><li style="box-sizing: border-box; padding: 0px 5px; ">130</li><li style="box-sizing: border-box; padding: 0px 5px; ">131</li><li style="box-sizing: border-box; padding: 0px 5px; ">132</li><li style="box-sizing: border-box; padding: 0px 5px; ">133</li><li style="box-sizing: border-box; padding: 0px 5px; ">134</li></ul>

fragmnet頁面與上篇博客類似,爲了篇幅只貼上SettingHomeFragment的點擊事件的處理,文章最後會提供完整代碼下載地址

<code class="hljs avrasm has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "> @Override
    public void onClick(View v)
    {
        switch (v<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.getId</span>())
        {
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_person_setting_home:// 個人信息設置

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_PERSON)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_album_setting_home:// 相冊

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_ALBUM)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_collection_setting_home:// 收藏

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_COLLECT)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_wallet_setting_home:// 錢包

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_WALLET)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_coupon_setting_home:// 卡卷

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_COUPON)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_face_setting_home:// 表情

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_FACE)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        case R<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.id</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.tv</span>_sysset_setting_home:// 系統設置

            mActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.replaceFragment</span>(MainActivity<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.FRAM</span>_SET_SYS)<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>

        default:
            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">;</span>
        }
    }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li><li style="box-sizing: border-box; padding: 0px 5px; ">44</li><li style="box-sizing: border-box; padding: 0px 5px; ">45</li></ul>

3、文藝式

文藝式的精髓就是使用指定view的id作爲tag,這樣實現對代碼的最大化精簡,減少配置參數。

先看HomeSettingFragment中的代碼,在自定義點擊事件中,我們直接調用MainActivity的replace方式,傳入被點擊的view的id即可。

<code class="hljs java has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-class" style="box-sizing: border-box; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">class</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">SettingHomeFragment1</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">extends</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">Fragment</span>
{</span>
    <span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box; ">/**
     * 跟佈局view
     */</span>
    View mRootView;

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> MainActivity1 mActivity;

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span>  OnClickListener mClickListener = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> OnClickListener()
    {
        <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onClick</span>(View v)
        {
            mActivity.replaceFragment(v.getId());
        }
    };

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Nullable</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> View <span class="hljs-title" style="box-sizing: border-box; ">onCreateView</span>(LayoutInflater inflater, @Nullable ViewGroup container,
            @Nullable Bundle savedInstanceState)
    {
        mRootView = inflater.inflate(R.layout.setting_home_fragment, container, <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">false</span>);

        mActivity = (MainActivity1) getActivity();

        setListener();

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span> mRootView;
    }

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">setListener</span>()
    {
        mRootView.findViewById(R.id.tv_person_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_album_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_collection_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_wallet_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_coupon_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_face_setting_home).setOnClickListener(mClickListener);
        mRootView.findViewById(R.id.tv_sysset_setting_home).setOnClickListener(mClickListener);
    }
}</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li><li style="box-sizing: border-box; padding: 0px 5px; ">12</li><li style="box-sizing: border-box; padding: 0px 5px; ">13</li><li style="box-sizing: border-box; padding: 0px 5px; ">14</li><li style="box-sizing: border-box; padding: 0px 5px; ">15</li><li style="box-sizing: border-box; padding: 0px 5px; ">16</li><li style="box-sizing: border-box; padding: 0px 5px; ">17</li><li style="box-sizing: border-box; padding: 0px 5px; ">18</li><li style="box-sizing: border-box; padding: 0px 5px; ">19</li><li style="box-sizing: border-box; padding: 0px 5px; ">20</li><li style="box-sizing: border-box; padding: 0px 5px; ">21</li><li style="box-sizing: border-box; padding: 0px 5px; ">22</li><li style="box-sizing: border-box; padding: 0px 5px; ">23</li><li style="box-sizing: border-box; padding: 0px 5px; ">24</li><li style="box-sizing: border-box; padding: 0px 5px; ">25</li><li style="box-sizing: border-box; padding: 0px 5px; ">26</li><li style="box-sizing: border-box; padding: 0px 5px; ">27</li><li style="box-sizing: border-box; padding: 0px 5px; ">28</li><li style="box-sizing: border-box; padding: 0px 5px; ">29</li><li style="box-sizing: border-box; padding: 0px 5px; ">30</li><li style="box-sizing: border-box; padding: 0px 5px; ">31</li><li style="box-sizing: border-box; padding: 0px 5px; ">32</li><li style="box-sizing: border-box; padding: 0px 5px; ">33</li><li style="box-sizing: border-box; padding: 0px 5px; ">34</li><li style="box-sizing: border-box; padding: 0px 5px; ">35</li><li style="box-sizing: border-box; padding: 0px 5px; ">36</li><li style="box-sizing: border-box; padding: 0px 5px; ">37</li><li style="box-sizing: border-box; padding: 0px 5px; ">38</li><li style="box-sizing: border-box; padding: 0px 5px; ">39</li><li style="box-sizing: border-box; padding: 0px 5px; ">40</li><li style="box-sizing: border-box; padding: 0px 5px; ">41</li><li style="box-sizing: border-box; padding: 0px 5px; ">42</li><li style="box-sizing: border-box; padding: 0px 5px; ">43</li></ul>

然後在MainActivity中,我們根據傳入的id進行fragment的創建,添加,查找。大量減少一些常量,可以降低在出現差錯的風險。

<code class="hljs java has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-class" style="box-sizing: border-box; "><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">class</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">MainActivity1</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">extends</span> <span class="hljs-title" style="box-sizing: border-box; color: rgb(102, 0, 102); ">FragmentActivity</span>
{</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> FragmentManager mFragmentManager;

    <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 當前顯示的fragment</span>
    Fragment mCurrentFragment;

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">static</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">final</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">int</span> HOME_TAG = <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box; ">1</span>;

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">protected</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onCreate</span>(Bundle savedInstanceState)
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">super</span>.onCreate(savedInstanceState);
        setContentView(R.layout.empty_activity);

        mFragmentManager = getSupportFragmentManager();

        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 添加主頁面</span>
        SettingHomeFragment1 settingHomeFragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingHomeFragment1();
        mFragmentManager.beginTransaction()
                .add(R.id.rl_container_main, settingHomeFragment, String.valueOf(HOME_TAG))
                .commitAllowingStateLoss();

        mCurrentFragment = settingHomeFragment;
    }

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onBackPressed</span>()
    {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (mCurrentFragment <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">instanceof</span> SettingHomeFragment1)
        {
            finish();
        } <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">else</span>
        {
            replaceFragment(HOME_TAG);
        }
    }

    <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box; ">@Override</span>
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">protected</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">onSaveInstanceState</span>(Bundle arg0)
    {
        <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// super.onSaveInstanceState(arg0);</span>
    }

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">void</span> <span class="hljs-title" style="box-sizing: border-box; ">replaceFragment</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">int</span>  id)
    {
        Fragment fragment = mFragmentManager.findFragmentByTag(String.valueOf(id));

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment != <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>)
        {
            mFragmentManager.beginTransaction()
                    .show(fragment)
                    .hide(mCurrentFragment)
                    .commitAllowingStateLoss();
        } <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">else</span>
        {
            fragment = fragmentFactory(id);

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">if</span> (fragment == <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>)
            {
                <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span>;
            }

            mFragmentManager.beginTransaction()
                    .add(R.id.rl_container_main, fragment, String.valueOf(id))
                    .hide(mCurrentFragment)
                    .commit();
        }

        mCurrentFragment = fragment;
    }

    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">private</span> Fragment <span class="hljs-title" style="box-sizing: border-box; ">fragmentFactory</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">int</span> id)
    {
        Fragment fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">null</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">switch</span> (id)
        {
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_album_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 相冊</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingAlbumFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_collection_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 收藏</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCollectionFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_coupon_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 卡劵</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingCouponFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_face_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 表情</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingFaceFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_person_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 個人</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingPersonFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_wallet_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 錢包</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingWalletFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">case</span> R.id.tv_sysset_setting_home:<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box; ">// 系統設置</span>

            fragment = <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">new</span> SettingSysFragment();

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">default</span>:

            <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">break</span>;
        }

        <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box; ">return</span> fragment;
    }
}</code>
發佈了14 篇原創文章 · 獲贊 3 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章