小言_互联网的博客

Android代码动态界面布局,以及fragment代码样例

258人阅读  评论(0)

1. addview in a layout

 

setContentView(R.layout.activity_tab_trade);

LinearLayout mainLayout = (LinearLayout) findViewById(R.id.layout_tab_trader);

RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout_tab_tradertitle);

 

String[] strLeft = new String[] {"111","222"};

String[] strRight = new String[] {"AAA","BBB"};

lefttext = new TextView[strLeft.length];

for(int i =0;i<strLeft.length; i++){

RelativeLayout addLayout = new RelativeLayout(this);

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(

layout.getLayoutParams());

//params.addRule(RelativeLayout.BELOW, lefttext[i].getId());

params.addRule(RelativeLayout.ALIGN_PARENT_LEFT );  

lefttext[i]  = new TextView(this);

lefttext[i].setText(strLeft[i]);

addLayout.addView(lefttext[i], params);

 LinearLayout.LayoutParams p = new LinearLayout.LayoutParams(      

                 LinearLayout.LayoutParams.MATCH_PARENT,      

                 LinearLayout.LayoutParams.WRAP_CONTENT      

         );      

mainLayout.addView(addLayout,p);

}

2. create a fragment in Activity

 

 

A. fragment code

 

public static NewOrderFragment newInstance(Bundle args) {

NewOrderFragment f = new NewOrderFragment();

f.setArguments(args);

return f;

}

 

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

this._Activity = this.getActivity();

this.getActivityRegisterBoradcastReceiver();

}

 

@Override

public View onCreateView(LayoutInflater inflater, ViewGroup container,

Bundle savedInstanceState) {

View view = inflater.inflate(R.layout.fragment_order, container,

false);

return view;

}

 

@Override

public void onDestroy() {

super.onDestroy();

if(TraderPreferences._CONNECT_NET)

this.getActivity().unregisterReceiver(mBroadcastReceiver);

}

 

B. xml Code

 

<!--         <fragment

            android:id="@+id/fragment_neworder"

            android:layout_width="0dip"

            android:layout_height="wrap_content"

            android:layout_weight="1"

            class="com.omnicare.trader.activity.NewOrderActivity$NewOrderFragment" />

 -->

   

      <FrameLayout

    android:id="@+id/fragment_newOrder_container"

    android:layout_weight="1"

    android:layout_width="0dip"

    android:layout_height="match_parent" >

</FrameLayout>

 

C. Activity Code

setContentView(R.layout.fragment_contain);

// if (savedInstanceState == null){//

NewOrderFragment newOrderFragment = NewOrderFragment

.newInstance(this.getIntent().getExtras());

this.getSupportFragmentManager().beginTransaction()

.add(R.id.fragment_container, newOrderFragment).commit();

} else {

setContentView(R.layout.activity_new_order);

NewOrderFragment newOrderFragment = NewOrderFragment

.newInstance(this.getIntent().getExtras());

FragmentTransaction ft = this.getSupportFragmentManager().beginTransaction();

ft.add(R.id.fragment_newOrder_container, newOrderFragment).commit();

//ft.replace(R.id.fragment_neworder, newOrderFragment).commit();

findView();


转载:https://blog.csdn.net/QQ718225250/article/details/8764380
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场