Android 는 Fragment 로 옵션 카드 를 만 듭 니 다.

본 고 는 이전의 동적 생 성 fragment 와 결합 하여 하나의 실천 을 하여 Fragment 로 옵션 카드 를 만 드 는 것 을 실현 한다.
프로젝트 레이아웃

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical"
 tools:context=".MainActivity" >

 <LinearLayout
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:orientation="horizontal" >

  <TextView
   android:id="@+id/tab1"
   android:layout_width="0dip"
   android:layout_height="wrap_content"
   android:layout_weight="1"
   android:gravity="center"
   android:text="    " />

  <TextView
   android:id="@+id/tab2"
   android:layout_width="0dip"
   android:layout_height="wrap_content"
   android:layout_weight="1"
   android:gravity="center"
   android:text="    " />

  <TextView
   android:id="@+id/tab3"
   android:layout_width="0dip"
   android:layout_height="wrap_content"
   android:layout_weight="1"
   android:gravity="center"
   android:text="    " />

  <TextView
   android:id="@+id/tab4"
   android:layout_width="0dip"
   android:layout_height="wrap_content"
   android:layout_weight="1"
   android:gravity="center"
   android:text="    " />
 </LinearLayout>

 <LinearLayout
  android:id="@+id/content"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >
 </LinearLayout>

</LinearLayout>
새 Fragment 1.java~Fragment 4.java,그 중 Fragment 1.java 의 코드 는 다음 과 같 습 니 다.

public class Fragment1 extends Fragment {
 @Override
 public View onCreateView(LayoutInflater inflater, ViewGroup container,
   Bundle savedInstanceState) {
  return inflater.inflate(R.layout.fragment1, null);
 }

}

다른 몇 개의 파일 의 코드 는 유사 하 다
새 fragment 1.xml~fragment 4.xml,그 중 fragment 1.xml 의 코드 는 다음 과 같 습 니 다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:gravity="center"
 android:orientation="vertical" >

 <TextView
  android:id="@+id/textview1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="    " 
  android:textAppearance="?android:attr/textAppearanceLarge"/>
</LinearLayout>
다른 몇 개의 파일 의 코드 는 유사 하 다
MainActivity.java 의 코드 는 다음 과 같 습 니 다.

public class MainActivity extends Activity implements OnClickListener {

 private LinearLayout content;
 private TextView tv1, tv2, tv3, tv4;
 private FragmentManager fm;
 private FragmentTransaction ft;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);

  content = (LinearLayout) findViewById(R.id.content);

  tv1 = (TextView) findViewById(R.id.tab1);
  tv2 = (TextView) findViewById(R.id.tab2);
  tv3 = (TextView) findViewById(R.id.tab3);
  tv4 = (TextView) findViewById(R.id.tab4);

  tv1.setOnClickListener(this);
  tv2.setOnClickListener(this);
  tv3.setOnClickListener(this);
  tv4.setOnClickListener(this);

  fm = getFragmentManager();
  ft = fm.beginTransaction();
  ft.replace(R.id.content, new Fragment1()); //      Fragment1

 }

 @Override
 public void onClick(View v) {
  ft = fm.beginTransaction();
  switch (v.getId()) {
  case R.id.tab1:
   ft.replace(R.id.content, new Fragment1());
   break;
  case R.id.tab2:
   ft.replace(R.id.content, new Fragment2());
   break;
  case R.id.tab3:
   ft.replace(R.id.content, new Fragment3());
   break;
  case R.id.tab4:
   ft.replace(R.id.content, new Fragment4());
   break;

  default:
   break;
  }
  ft.commit();

 }

}

프로젝트 실행 후 다음 효과:

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

/**
 * Created by gerry.zhong on 2016/10/11.
 */
var gerry =
(function(){
  //         ,       ,              
  var tool = {
    AAAA:function(){},
    BBBB:function(){
      console.log("       ,      ");
    }
  };
 
  /*
  *                
  *  1.            
  *  2.           (    tempObj.tool.AA)
  *  3.                    ,     (tool.BBBB)
  * */
  var tempObj ={
    //reader           ,          ,       
    reader:function(){
    },
    //        ,       ,            ,         
    selector:{
      mySelector:"#mySelector", //   
    },
    //         ,          ,    ,           
    interface:{
      loginUrl:"",
    },
    //  page      ,    ,      :  _  ,  click_login
    registerEle:{
      click_login:function(){
        //      
      }
    },
    //    ajax  ,      ,        ,      :ajax_  ,  ajax_login
    /*
    *      2   ,     
    * 1.         
    * 2.      ,         
    * */
    ajaxRequest:{
      //         
      ajax_login:function(){
        $.post("","",function(data){
          tempObj.callback.call_login(data);
        });
      },
      //            
      ajax_login_T:function(callback){
        //       interface   ,callback tempObj.callback   
        $.post("","",callback);
      },
    },
    //        ,      ,      
    callback:{
      //         
      call_login:function(data){
        //    
      },
      //        
      call_login_T:function(){
        var temp = function(){
 
        };
        tempObj.ajaxRequest.ajax_login_T(temp);
      }
    },
    //        ,          unit.js  common.js          ,       
    // PS:                    tool,        ,       
    tool:{
      A:function(){
        console.log("        ");
      },
      AA:tool.AAAA,  //              
    },
    //        ,      ,        cookie  localstorage 
    //              display            
    temp:{
 
    },
    /*
    *       ,                     
    *           ,      ,             ,    
    * */
    firm:{
 
    }
  };
  /*
  *         
  * */
  var outputObj =function(){
    //    reader  ,       ,          
    tempObj.reader();
    /*
    *           
    *             ,    tempObj  ,  tool  AA   
    *              ,    tool    BBBB  ,       ,        
    * */
    return tempObj;
  }
 
  //           ,        ,  。
  return new outputObj();
})();

좋은 웹페이지 즐겨찾기