Android忽略我的setWidth()和setHeight()

Ale*_*ovs 4 android view button

那么,为什么这个代码:

package org.popoffka.apicross;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;

public class Game extends Activity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     Button testButton = new Button(this);
     testButton.setBackgroundResource(R.drawable.cell);
     testButton.setWidth(20);
     testButton.setHeight(20);
     setContentView(testButton);
 }
}
Run Code Online (Sandbox Code Playgroud)

...产生这个东西:http: //i42.tinypic.com/2hgdzme.png,即使代码中有setWidth(20)和setHeight(20)?(R.drawable.cell实际上是一个20x20 PNG图像,包含带有银色边框的白色单元格)

Rom*_*Guy 13

设置View的宽度和高度的正确方法是通过LayoutParams来实现.请参见ViewGroup.LayoutParams和View.getLayoutParams().