我的ImageButton可以很好地扩展,但出于布局目的,我希望它能够触及屏幕的两侧,我该怎么做?
ImageButton重新调整代码:
public void getScreenRes() {
DisplayMetrics display = this.getResources().getDisplayMetrics();
int screenwidth = display.widthPixels;
int screenheight = display.heightPixels;
double buttonheight = screenwidth / 2.66666667;
int buttonheightint= (int) Math.round(buttonheight);
ImageButton fbLogin = (ImageButton) findViewById(R.id.facebookLogin);
ViewGroup.LayoutParams fb = fbLogin.getLayoutParams();
fb.width = screenwidth;
fb.height = buttonheightint;
fbLogin.setLayoutParams(fb);
ImageButton instaLogin = (ImageButton) findViewById(R.id.instagramLogin);
ViewGroup.LayoutParams insta = instaLogin.getLayoutParams();
insta.width = screenwidth;
insta.height = buttonheightint;
instaLogin.setLayoutParams(insta);
}
XML:
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:background="@drawable/facebook"
android:layout_centerHorizontal="true"
android:id="@+id/facebookLogin"
android:scaleType="fitCenter"
android:onClick="facebookLogin"
/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/instagram"
android:layout_centerHorizontal="true"
android:layout_below="@id/facebookLogin"
android:id="@+id/instagramLogin"
android:scaleType="fitCenter"
android:onClick="instagramLogin"
/>
这就是我想要的,红线是我想用图像按钮填充的未占用空间:
答案 0 :(得分:2)
正如Fede Bucich上面提到的
机器人:layout_width =&#34; match_parent&#34; 机器人:layout_height =&#34; WRAP_CONTENT&#34;
将使按钮与其父视图的宽度匹配,但对于图像,您已将scaleType指定为&#34; fitCenter&#34;它将保持源图像的原始宽高比并使其居中,而不是使用&#34; fitXY&#34;伸展到x轴和y轴。
答案 1 :(得分:1)
您是否尝试过以下内容?
android:layout_width="match_parent"
android:layout_height="wrap_content"
FILL_PARENT (renamed MATCH_PARENT in API Level 8 and higher), which means that the view wants to be as big as its parent (minus padding)
答案 2 :(得分:0)
将ImageButton宽度更改为“match_parent”,将scaleType更改为“fitXY”,如下所示:
<ImageButton
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:background="@drawable/facebook"
android:layout_centerHorizontal="true"
android:id="@+id/facebookLogin"
android:scaleType="fitXY"
android:onClick="facebookLogin"/>
但仅当包含layout
的{{1}} ImageButtons
等于layout_width