我正在创建一个将动态创建 tableLayout 的 Fragment,但我遇到了问题,因为它没有被显示。有人能告诉我为什么它不显示吗?可以显示除表格之外的部分标签。
这是我的xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_fragment_bp_list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="top"
android:orientation="vertical" >
<TextView
android:id="@+id/section_bp_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TableLayout
android:id="@+id/tableLayoutBloodPressure"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</TableLayout>
</LinearLayout>
这是我的片段类-数据仅用于测试
public class BloodPressureFragment extends Fragment {
public BloodPressureFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_bp_list, container,
false);
TextView txt = (TextView) rootView.findViewById(R.id.section_bp_label);
txt.setText("Blood Pressure History Logs");
TableLayout ll = (TableLayout) rootView
.findViewById(R.id.tableLayoutBloodPressure);
for (int i = 1; i < 10; i++) {
TableRow tbrow = new TableRow(getActivity().getApplicationContext());
tbrow.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));
TextView tv1 = new TextView(getActivity().getApplicationContext());
tv1.setLayoutParams(new TableRow.LayoutParams(
TableRow.LayoutParams.MATCH_PARENT,
TableRow.LayoutParams.WRAP_CONTENT));
tv1.setId(i);
tv1.setText("Test id: " + i);
tbrow.addView(tv1);
ll.addView(tbrow, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
}
return rootView;
}
}