我拼命想要将ImageView添加到TableRow,但不知何故我不能。我可以在TableLayout中添加一个新的TableRow,但是对于Row我不能添加任何东西。 我已经尝试使行无效,或者我插入的视图无效,但没有区别。
代码:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View rootView = inflater.inflate(R.layout.page2,
container, false);
Button soundBtn = (Button) rootView.findViewById(R.id.p2b1);
soundBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
LayoutInflater inflater = activity.getLayoutInflater();
TableRow row = (TableRow)inflater.inflate(R.layout.page2, null).findViewById(R.id.p2row9);
View child = (View)inflater.inflate(R.layout.dummyview, null);
row.addView(child, 0);
}
});
}
,XML是:
<TableLayout
android:id="@+id/p2table"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="1" >
<TableRow
android:id="@+id/p2row9"
android:layout_width="wrap_content"
android:layout_height="200dip"
android:paddingTop="10dip">
</TableRow>
</TableLayout>
我的虚拟视图是:
<?xml version="1.0" encoding="utf-8"?>
<View xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dp"
android:layout_weight="0.3"
android:layout_height="1dp"
android:gravity="center"
android:background="@color/textbody" />
任何帮助表示感谢。
答案 0 :(得分:0)
在回调onClick
中,您不必第二次夸大您的布局。
TableRow row = (TableRow) inflater.inflate(R.layout.page2, null).findViewById(R.id.p2row9);
相反,请使用根视图直接查找TableRow
。
TableRow row = (TableRow) rootView.findViewById(R.id.p2row9);