如何使用一些文本在Editbox中添加图像?

时间:2014-02-14 08:27:49

标签: java android editbox

我正在尝试使用一些文本在“编辑”框中添加图像,但它没有显示图像。它只显示文本。

这是我的xml。

 <Button
     android:id="@+id/favButton"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="Add to "
     android:drawableRight="@drawable/white_star"
     android:layout_below="@id/priceText"
     android:layout_alignParentLeft="true"
     android:background="@drawable/rounded_corner_black"
     android:padding="10dip"
     style="@style/ButtonText"
     android:onClick="onAddFavClick" />

这是我的Java代码。

 private void updateFavButton() {
    if (atmItem.isFav()) {

      favButton.setText("Remove from ");

    } else {

      favButton.setText("Add to ");

    }
 }

4 个答案:

答案 0 :(得分:0)

您也可以尝试这种方式

<EditText

    android:drawableLeft="@drawable/your_image" />

或者您可以参考StackOverFlow Answer

因此,您可以使用android:drawableRight=""

答案 1 :(得分:0)

您想要的功能称为CompoundDrawable

您可以在EditText

中设置属性

在您的情况下,如果您想在右侧显示图像,请使用android:drawableRight

答案 2 :(得分:0)

如果您想继续使用XML

,这是一种简单的方法
<RelativeLayout 
    android:id="@+id/edittext"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/searchcards_back_relative" >

<ImageView 
                android:id="@+id/leftbutton"
                android:layout_alignParentLeft="true"
                android:layout_width="wrap_content"
                android:layout_height="46dp"
                android:background="@drawable/searchleft"/>    

<LinearLayout android:focusable="true"
    android:id="@+id/searchcards_edit_search_lin"
    android:focusableInTouchMode="true" 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:layout_toRightOf="@id/leftbutton"
    android:layout_centerHorizontal="true"
    android:layout_marginLeft="0px"
    android:background="@drawable/searchmiddle">

    <EditText 
        android:hint="Search Cards" 
        android:id="@+id/searchcards_edit_search"
        android:layout_width="fill_parent"
        android:layout_height="28dp"
        android:textColor="#000000" 
        android:textSize="18dp"
        android:singleLine="true"
        android:background="#0fff"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="21dp"
        android:gravity="center_vertical"
        android:layout_marginTop="0dp"
        android:imeOptions="actionSearch"
        android:layout_gravity="center_vertical"/>

</LinearLayout>
<ImageView 
            android:id="@+id/rightbutton"
            android:layout_alignParentRight="true"
            android:layout_width="wrap_content"
            android:layout_height="46dp"
            android:background="@drawable/searchright"/> 

    <TextView  
        android:id="@+id/searchcards_back_hitsearch"
        android:layout_width="35dp" 
        android:layout_height="40dp"
        android:textSize="25px"
        android:textStyle="bold"
        android:layout_centerVertical="true"
        android:textColor="@android:color/white"
        android:layout_alignParentRight="true"  
        android:background="#0222"    
        android:text=""/>

</RelativeLayout>

<ListView
    android:id="@+id/searchcards_list"
    android:layout_width="wrap_content"
    android:background="@drawable/background"
    android:layout_height="fill_parent"
    android:layout_below="@+id/edittext"
    android:divider="#fff"
    android:dividerHeight="1px"
    android:cacheColorHint="@android:color/transparent"
        android:layout_marginBottom="4px"
    android:scrollbars="none"   />

 </RelativeLayout>

你应该在drawable文件夹中使用.png图像来显示左,中,右图像。 你也可以采取相对布局来做到这一点...更多保持谷歌搜索...

答案 3 :(得分:0)

我只是使用以下方法获得图像

    favButton.setCompoundDrawablesWithIntrinsicBounds( 0, 0,R.drawable.white_star, 0);