コードを使用して TableLayout を動的に作成し、列間にマージンを設定したいと考えています。TableRows に含まれるコンテンツの唯一のタイプは TextViews です。
私の意図は、android:layout_marginRight
各 TextView に単純なものを配置することでした。しかし、コードではなくxmlでこれを定義したいと思います。
私が試したこと:
コード:
txtView.setTextAppearance(context, R.style.TableTextView);
txtView.setText(content);
tableRow.addView(txtView);
XML
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="TableTextView">
<item name="android:textAppearance">?android:attr/textAppearanceLarge</item>
<item name="android:textStyle">bold</item>
<item name="android:layout_marginRight">5dip</item>
</style>
</resources>
何が起こるのですか:
XMLのlayout_marginRight
セットは機能しませんが、XML のtextAppearance
andtextStyle
セットは機能します。setTextAppearance-method は、TextView にマージンを割り当てるための間違った方法だと思いますか? Java コードの代わりに XML を介して (上記で試したように) これを行うことができれば、本当に素晴らしいことです。
ありがとうございました!