2019年1月18日 星期五

[Android]_ch11.5_Fragment元件1



[Android]_ch11.5_Fragment元件1



package com.derek.ch29_fragment;



import android.app.Activity;

import android.app.Fragment;

import android.app.FragmentManager;

import android.app.FragmentTransaction;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;





public class MainActivity extends Activity {

Button btn1,btn2,btn3;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        btn1=(Button)findViewById(R.id.button1);

        btn2=(Button)findViewById(R.id.button2);

        btn3=(Button)findViewById(R.id.button3);

        FragmentManager fm=getFragmentManager();

        FragmentTransaction ft=fm.beginTransaction();

        Fragment fragment=fm.findFragmentById(R.id.framelayout);

        if(fragment==null){

        MyFragment myFragment=new MyFragment("國立交通大學");

        ft.add(R.id.framelayout, myFragment);

        ft.addToBackStack(null);

        ft.commit();

        btn1.setEnabled(false);

        btn2.setEnabled(true);

        }

        btn1.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

FragmentManager fm=getFragmentManager();

        FragmentTransaction ft=fm.beginTransaction();

        Fragment fragment=fm.findFragmentById(R.id.framelayout);

        if(fragment!=null && fragment.isDetached()){        

        ft.attach(fragment);

        ft.addToBackStack(null);

        ft.commit();

        btn1.setEnabled(false);

        btn2.setEnabled(true);

        }

}

});

        btn2.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

FragmentManager fm=getFragmentManager();

        FragmentTransaction ft=fm.beginTransaction();

        Fragment fragment=fm.findFragmentById(R.id.framelayout);

        if(fragment!=null && !fragment.isDetached()){

        ft.detach(fragment);

        ft.addToBackStack(null);

        ft.commit();

        btn2.setEnabled(false);

        btn1.setEnabled(true);

        }

}

});

        btn3.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

MainActivity.this.finish();

}

});

    }



}



package com.derek.ch29_fragment;

import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

public class MyFragment extends Fragment{
String title;
TextView tv;
public MyFragment(String title){
this.title=title;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view=inflater.inflate(R.layout.myfragment, container,false);
tv=(TextView)view.findViewById(R.id.textView1);
tv.setText(title);
return view;
}
}

沒有留言:

張貼留言

Ether.fi Cash Card 一張所有人必備的加密貨幣信用卡   [Ether.fi Cash Card] : https://www.ether.fi/app/cash/sign-up?ref_code=d27f8523 ------國際交易所------ [Bitg...