我有一个代码,可以在RelativeLayout
中动态添加按钮(按钮的MyButton扩展,并设置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);
有人可以帮助我吗?
答案 0 :(得分:0)
解决方案:我在两种情况下都删除了填充,它有效。