<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                上一篇講到 [](http://blog.csdn.net/id19870510/article/details/50397129)[Android SDK開發 -- TitleBar重構 (代理模式的使用](http://blog.csdn.net/id19870510/article/details/50397129)[)](http://blog.csdn.net/id19870510/article/details/50397129) 然后補了一下代理設計模式。參考書籍《大話設計模式》 改善一下之前的代碼設計。 先來定義一個接口 ~~~ /** * AppTitle接口 * * @author coffee <br> * 2016-1-2 下午10:17:53 */ public interface AppTitle { /** * 初始化Title view */ public void initTitle(); /** * 設置app的title * * @param leftTitle * @param middleTitle * @param rightTitle */ public void setTitle(TitleRes leftTitle, TitleRes middleTitle, TitleRes rightTitle); } ~~~ 接口的實現 ~~~ public class TitleMgr implements AppTitle { ~~~ TitleMgr的實現參考上一篇文章 然后改善一下BaseActivity的類(該類相當于AppTitle的代理類,TitleMgr是AppTitle的實現類) ~~~ public abstract class BaseActivity extends Activity implements Handler.Callback, AppTitle { private AppTitle appTitle; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); <span style="white-space:pre"> </span>//.... findViewById(); } /** * 初始化title View */ protected void findViewById() { initTitle(); } @Override public void initTitle() { appTitle = new TitleMgr(getContext(), findViewById(android.R.id.content)); appTitle.initTitle(); } /** * 設置app的title欄 * * @param leftTitle * @param middleTitle * @param rightTitle */ @Override public void setTitle(TitleRes leftTitle, TitleRes middleTitle, TitleRes rightTitle) { appTitle.setTitle(leftTitle, middleTitle, rightTitle); } ~~~ BaseFragment的實現省略。。與Activity類似 至于為什么要定義一個接口AppTitle,而不是直接拿實現類TitleMgr來用。。 目前表示不是很理解。 ?網上所有的示例都采用接口來實現。。。。。。大概是為了統一代理類和實現類的操作吧。。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看