这是我的代码
ImageButton btnPlayVideo = (ImageButton) findViewById(R.id.btnPlayVideo);
btnPlayVideo.setBackgroundResource(R.drawable.play_icon_grey);
btnPlayVideo.setAdjustViewBounds(true);
btnPlayVideo.setMaxHeight(10);
btnPlayVideo.setMaxWidth(10);
和我的xml
<ImageButton
android:id="@+id/btnPlayVideo"
android:layout_width="90dp"
android:layout_height="90dp"
android:background="@android:color/transparent"
android:layout_span="2" />
但似乎setmaxheight和layout_height和width甚至都不起作用。那么如何设置图像按钮的尺寸?
答案 0 :(得分:5)
您需要使用android:scaleType
调整大小以适应。
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_launcher"
android:scaleType="fitXY" />
产生以下输出。
答案 1 :(得分:4)
您可以通过代码
执行此操作android.view.ViewGroup.LayoutParams params = btnPlayVideo.getLayoutParams();
params.height = myHeight;
params.width = myWidth;
btnPlayVideo.setLayoutParams(params);
,但可能您的问题不在代码中,但在布局中 - 我发现您使用的是android:layout_span="2"
- 这是否意味着btnPlayVideo
位于TableLayout
?如果是这样,您必须规范此TableLayout
的维度,因为其子级的宽度和高度始终为fill_parent
。
答案 2 :(得分:0)
我使用了指标:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
btnPlayVideo.setMinimumHeight(metrics.heightPixels / (amount));
btnPlayVideo.setMinimumWidth(metrics.widthPixels/ (amount));