我想根据ImageButton上文字的大小来设置这个按钮变得更宽。但如果失败了。这是我的XML代码,以及当文本太长时我在模拟器中实际看到的内容。选择器.9patch中的图像,当文本多于图像按钮时,如何使图像按钮变宽?感谢。
<ImageButton
android:id="@+id/bonjour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:scaleType="fitXY"
android:background="@layout/main_menu_account_white_button_selector"/>
<TextView
android:id="@+id/bonjour_text_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerHorizontal="false"
android:text=""
android:textColor="@color/menubutton_black"
android:textSize="@dimen/small_bottom_menubutton_title_text_size_dn"
android:textStyle="bold|italic" />
<TextView
android:id="@+id/bonjour_text_dn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bonjour_text_up"
android:layout_centerHorizontal="false"
android:text="ScreenName"
android:textColor="@color/menubutton_black"
android:textSize="@dimen/small_bottom_menubutton_title_text_size_dn"
android:textStyle="bold|italic" />
</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/main_menu_account_white_button_1" /> <!-- pressed -->
<item android:state_selected="true"
android:drawable="@drawable/main_menu_account_white_button_1" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/main_menu_account_white_button_0" /> <!-- focused -->
<item android:drawable="@drawable/main_menu_account_white_button_0" /> <!-- default -->
</selector>
答案 0 :(得分:0)
将9patch
图片保留在drawable
文件夹中,并将其作为图片布局中ImageButton的来源/背景。
答案 1 :(得分:0)
以下是帮助我解决问题的解决方法: 我将9patch图像设置为RelativeLayout的背景,删除了ImageButton。 实际按钮需要以这种方式完成: 顶部和左侧=必须仅在中间区域标记为可缩放 left和bottom = content必须标记为全长。
<RelativeLayout
android:id="@+id/bonjour"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/main_menu_account_white_button_0"
android:clickable="true" >
<TextView
android:id="@+id/bonjour_text_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerHorizontal="false"
android:text=""
android:textColor="@color/menubutton_black"
android:textSize="@dimen/small_bottom_menubutton_title_text_size_dn"
android:textStyle="bold|italic" />
<TextView
android:id="@+id/bonjour_text_dn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/bonjour_text_up"
android:layout_centerHorizontal="false"
android:text="ScreenName"
android:textColor="@color/menubutton_black"
android:textSize="@dimen/small_bottom_menubutton_title_text_size_dn"
android:textStyle="bold|italic" />
</RelativeLayout>