2012-09-22 34 views
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> 

如何設置重力按鈕?

+0

你做了什麼輸出告訴我們一些截圖你需要什麼,當你試圖提到的代碼發生了什麼? – Akram

+0

您是否動態創建按鈕? –

+0

是的,我動態地創建了按鈕。我現在無法上傳屏幕截圖,但我可以確定文本位於按鈕的頂部,而不是中間。 – LiorZ

回答

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); 



} 

}

氏旨意爲我工作....

快樂編碼....

相關問題