2

メインのxmlレイアウトで説明されているテーブルがあります。各テーブル行にレイアウトを設定する機会があるかどうかを知る必要があるので、毎回再作成する必要はありませんか? レイアウトが単純な場合は、コードでそれを行うことができますが、現時点ではレイアウトはかなり複雑です。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ebank_saskaitos);
    this.setFirstBlock();
}



private void setFirstBlock() {
    TableLayout ll = (TableLayout) findViewById(R.id.first_block);
    ll.addView(this.tableChild());

}

private TableRow tableChild() {
    TableRow tr = new TableRow(this);

    //row implementation

    return tr;
}
4

1 に答える 1

5

LayoutInflater次のように使用します。

private View tableChild() {
    TableRow tr = new TableRow(this);
    View v = LayoutInflater.from(mContext).inflate(R.layout.layout_for_my_table_row, tr, false);
    //want to get childs of row for example TextView, get it like this:
    TextView tv = (TextView)v.findViewById(R.id.my_row_text_view);
    tv.setText("This is another awesome way for dynamic custom layouts.");
    return v;//have to return View child, so return made 'v'
}
于 2012-05-02T09:50:18.060 に答える