ボタンを動的に追加するコードがありますRelativeLayout
(MyButton は Button を拡張し、setTag
とgetTag
を設定しますImageView
)。ボタンにはImageView
アイコンとして がある場合とない場合があります。
ImageView ボタン (アイコンなど) を割り当てるコード:
// ユーザーがテーマをアイコンで設定した場合
if (this.isShowIcons() == true) {
if (newButton.getTag() != null) {
newButton.setCompoundDrawablesWithIntrinsicBounds(null, ((ImageView) newButton.getTag()).getDrawable(), null, null);
newButton.setPadding(leftpadding, toppadding, rightpadding, bottompadding);
} else {
newButton.setPadding(5, 5, 5, 5);
}
} else {
newButton.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);
newButton.setPadding(5, 5, 5, 5);
}
ターゲットと最小バージョンを指定する行をマニフェストに挿入すると、アイコンがボタン内の下部に表示されることがわかりました。
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="10" />
行を単純に削除すると、uses-sdk
ほとんどのデバイスで動作しますが、タブレットではレイアウトが問題になります。
ImageView サンプル:
ImageView imb1 = new ImageView(this.getBaseContext());
imb1.setImageResource(R.drawable.icon_1);
imb1.setMaxHeight(120);
imb1.setMaxWidth(120);
imb1.setScaleType(ImageView.ScaleType.CENTER);
MyButton b1 = new MyButton(this);
b1.setText("Label...");
b1.setId(1001);
b1.setTag(imb1);
誰でも私を助けることができますか?