Android°ÙÈÕ³ÌÐò£ºÇ¶ÈëFragment

來源:互聯網
上載者:User

Android°ÙÈÕ³ÌÐò£ºÇ¶ÈëFragment

FragmentÏ൱ÓÚÒ»¸öСÐÍactivity£¬ÒòΪFragment¿ÉÒÔʵÏÖactivityÖÐËùÓеŦÄÜ£¬²»Í¬µÄÊÇFragment¿ÉÒÔǶÈëactivity£¬Ò»¸öactivity¿ÉÒÔÓжà¸öFragment£¬¶øÇÒ¿ÉÒÔÔËÐÐʱ¸ù¾ÝÐèÒªÇл»Fragment£¬´ïµ½¿ÉÒÔÊÊÓ¦²»Í¬ÆÁÄ»´óСµÈÄ¿µÄÐèÒª¡£


±¾ÕÂÀ´¿´¿´ÈçºÎÔÚactivityÖÐǶÈëFragmentµÄ·½·¨£¬Óо²Ì¬ºÍ¶¯Ì¬·½·¨µÄ¡£

¾²Ì¬·½·¨¾ÍÊÇʹÓÃxmlÖ±½ÓǶÈ룬¶¯Ì¬¾ÍÊÇÔÚJava´úÂëÖÐǶÈë¡£


·½·¨£º

1 °´ÕÕĬÈÏÉèÖÃн¨ÏîÄ¿

2 н¨Ò»¸öÀàÃüÃûΪFragment1.java

´úÂëÈçÏ£º

package bill.su.fragment;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Fragment1 extends Fragment {@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {return inflater.inflate(R.layout.fragment1, container, false);}}
3 н¨layoutµÄxmlÎļþ£¬ÊäÈë´úÂëÈçÏ£º

        

4 ͬÀíн¨µÚ¶þ¸öÀࣺ

package bill.su.fragment;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;public class Fragment2 extends Fragment {@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {return inflater.inflate(R.layout.fragment2, container, false);}}

5 н¨µÚ¶þ¸öÀàµÄ¶ÔÓ¦layoutµÄxmlÎļþ£º

            

6 Ö»ÐèÒªÔÚÖ÷activityµÄxmlÎļþÖÐÖ±½ÓǶÈëFragment¾Í¿ÉÒÔÁË£º

           

ÔËÐеõ½ÈçÏÂЧ¹û£º



<†·Ÿ"http://www.bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+1eLR+c2s0ru49mFjdGl2aXR51tDHtsjrwcvBvbj2srvNrLXERnJhZ21lbnTBy6GjPC9wPgo8cD7V4tH5u/mxvsnPsrvTw9C0SmF2YbT6wuuhozwvcD4KPHA+PGJyPgo8L3A+CjxwPsjnufvU2mFjdGl2aXR5tcRKYXZhtPrC69bQyrXP1rXEu7CjrL7N1rvQ6NKq0N64xG9uQ3JlYXRluq/K/b7Nv8nS1KO6PC9wPgo8cD48cHJlIGNsYXNzPQ=="brush:java;">@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);FragmentManager fragManager = getFragmentManager();FragmentTransaction fragTrans = fragManager.beginTransaction();// get the current display infoWindowManager wm = getWindowManager();Display d = wm.getDefaultDisplay();if (d.getWidth() < d.getHeight()) {Fragment1 frag1 = new Fragment1();fragTrans.replace(android.R.id.content, frag1);}else {Fragment2 frag2 = new Fragment2();fragTrans.replace(android.R.id.content, frag2);}fragTrans.commit();}
֪ʶµã£º

ʹÓÃFragmentManagerºÍFragmentTransactionÁ½¸öÀàʵÏÖ¶¯Ì¬ÔØÈëFragment¡£

ÆäÖеÄWindowManagerÊÇΪÁ˵õ½µ±Ç°ÆÁÄ»µÄ³¤ºÍ¿í£¬ÅжÏÊǺáÆÁº«Ê½ÊúÆÁ£¬²¢¸ù¾ÝÕâÅжÏÔØÈ벻ͬµÄFragment£¬µÃµ½²»Í¬µÄЧ¹û¡£

×îºóÒ»¾äFragTrans.commit()ÊDZØÐëµÄ£¬ÕâÑù²ÅÄÜʹµÃFragmentÔØÈë³É¹¦¡£


µ½´ïÒ»¶¨¾³½çÁË£¬ÕâÐÈ«²¿¶¼³ÉΪºÜÈÝÒ׺ܼòµ¥µÄ¶«Î÷ÁË£¬Ñ§Ò»ÐÐÂ֪ʶµã²¢²»ÄÑ£¬ÄÑÊÇÔÚÓÚ¼ÇÒ䣬¸üÄѵÄÊÇÔÚÓÚÁé»îÔËÓ㬻¹Óиü¼Ó¸ü¼ÓÄѵÄÊÇÈçºÎÔËÓÃÕâÐ֪ʶ´´Ôì¼Û值£¬×îÄѵÄÊÇ´´Ôì±ðÈËÎÞ·¨´´ÔìµÄ¼Û值¡£



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.