0

我有一个按钮,我将它的背景设置如下:

button.setBackgroundResource(R.drawable.bg);

之后我向按钮添加了文本,我希望它居中:

button.setGravity(Gravity.CENTER);

但它不起作用。

可绘制的形状是:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:top="-1dp" android:right="-1dp">
      <shape>
            <solid android:color="@color/white" />
            <stroke android:width="1dp" android:color="@android:color/darker_gray" />
      </shape>
    </item>
</layer-list>

如何设置按钮的重力?

4

1 回答 1

1

在您的 XML 布局文件中放置一个按钮。

xml的代码如下

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"

    android:text="Button" />

现在在你的活动中

设置按钮的重力做这个..

    public class MainActivity extends Activity {

private Button b;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    b = (Button) findViewById(R.id.button1);
    b.setBackgroundResource(R.drawable.ic_launcher);

    LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
            LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

        params.gravity = Gravity.CENTER;

        b.setLayoutParams(params);



} 

}

这对我有用....

快乐的编码......

于 2012-10-26T05:44:58.103 回答