2017-02-21 14 views
1

イメージとテキストで6つのボタンを作成しました......これらのイメージとテキストをボタン中央に表示したいテキストだけで画像の下にあり、これは...いずれかがこの問題を解決することができればちょうど私がこれつもりは理解ボタンの中心にイメージとテキストを設定する方法

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     android:weightSum="3" > 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:orientation="horizontal" 
      android:weightSum="2" > 

      <Button 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:drawableTop="@drawable/list" 
       android:text="Order Station" 
       android:textStyle="bold"/> 

      <Button 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:text="2" /> 
     </LinearLayout> 


     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:orientation="horizontal" 
      android:weightSum="2" > 

      <Button 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:drawableTop="@drawable/power" 
       android:background="#ff4545" 
       android:text="Quick Order" 
       android:textStyle="bold" /> 

      <Button 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_weight="1" 
       android:text="4" 
       /> 
     </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 
     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:drawableTop="@drawable/coffeecup" 
      android:text="Take Away" 
      android:textStyle="bold"/> 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="4" /> 
    </LinearLayout> 
    </LinearLayout> 
</FrameLayout> 
+0

ボタンサイズに合わせて画像を切り抜き、テキストを中央に配置したい場合は、 –

答えて

0

ことを願って私の悪い英語のため申し訳ありませんが、階下のXMLコードを書く...私のXMLコードでありますあなたは別のレイアウト(LinearまたはRelative)を使用してTextViewにdrawableTopを配置し、そのLinearLayoutをonClickListenerを与えてButtonとして使用する必要があります。 wrap_contentとして

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:weightSum="3" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:layout_weight="1"> //give onclick to this layout to act as a button 
      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:drawableTop="@drawable/list" 
       android:gravity="center" 
       android:text="Order Station" 
       android:textStyle="bold"/> 

     </LinearLayout> 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="2" /> 
    </LinearLayout> 


    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:background="#ff4545" 
      android:layout_weight="1"> 
      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:drawableTop="@drawable/power" 
       android:gravity="center" 
       android:text="Quick Order" 
       android:textStyle="bold"/> 

     </LinearLayout> 
     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="4" 
      /> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 
     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:layout_weight="1"> 
      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:drawableTop="@drawable/coffeecup" 
       android:gravity="center" 
       android:text="Take Away" 
       android:textStyle="bold"/> 

     </LinearLayout> 
     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="4" /> 
    </LinearLayout> 
</LinearLayout> 

またはボタンの高さを設定します。

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:drawableTop="@drawable/list" 
      android:text="Order Station" 
      android:textStyle="bold"/> 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="2" /> 
    </LinearLayout> 
+0

ありがとうございますが本当に役立ちますが、私は必要に応じて画像とテキストビューを置くことができるので、このボタンを相対レイアウトに変更します – 7arooney

+0

実際は別のレイアウトを追加することを意味します。 –

0

あなたはトリミングした画像をしたいし、テキストを中心に滞在する場合は、あなただけのボタンの背景される画像を設定することができます:android:background="@drawable/YOUR_IMAGE"

はここで、それはあなたのXMLとしてどのように見えるかです:

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:weightSum="3" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="Order Station" 
      android:textStyle="bold" 
      android:background="@drawable/list" /> 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="2" /> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="Quick Order" 
      android:textStyle="bold" 
      android:background="@drawable/power" /> 


     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="4" 
      /> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:orientation="horizontal" 
     android:weightSum="2" > 
     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="Take Away" 
      android:textStyle="bold" 
      android:background="@drawable/coffeecup"/> 

     <Button 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="4" /> 
    </LinearLayout> 
</LinearLayout> 
</FrameLayout> 
+0

ありがとうございますが、本当に役に立ちますが、このボタンを相対レイアウトに変更すると、必要に応じてイメージとテキストビューを配置できます - 7arooney – 7arooney

関連する問題