对Fragment 界面进行动态控制

来源:互联网 发布:最短路问题的floyd算法 编辑:程序博客网 时间:2024/06/05 05:43

问题描述:
使用 http://www.jianshu.com/p/68cb99ac682d 所描述的方法模仿微信滑动界面, 但在Fragment中 与 Activity中有些布局设置不相同, 以下代码实现了 Fragment 的动态界面

package com.example.seven.fragmentdemo;import android.app.Fragment;import android.os.Bundle;import android.support.annotation.Nullable;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.Button;import android.widget.LinearLayout;import android.widget.TextView;/** * Created by Seven on 2016/8/26. */public class FragmentDemo extends Fragment {    private View view;    @Nullable    @Override    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//获取布局内容

view=inflater.inflate(R.layout.fragment1,container,false);

//改变布局
UIgenerate();

//设置布局
return view;

}

// 动态产生layout布局
private void UIgenerate(){

   //给需要生成内容的layout设置id, 得到需要生成的layout.

LinearLayout layout=(LinearLayout)view.findViewById(R.id.fragment1); //需要从之前得到的 view 中寻找

//添加新的控件
Button button=new Button(view.getContext());

button.setText(“Dynamic Fragment”);

button.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
//点击出发事件
}
}
);
layout.addView(button);


//设置原有的控件
TextView textView=(TextView)view.findViewById(R.id.text);
textView.setText(“这是设置的内容”);


}
}

0 0