2012-02-24 10 views
0

ボタンクリックでEditTextフィールドの背景を変更する方法は?ビューモードでは、境界線のないラベルとして表示され、ボタンをクリックすると境界線を含む編集モードになります。ラベルとしてのEditTextを示す おかげAndroid - EditTextがラベルとテキストフィールドとして動作する方法

+0

なぜFrameLayoutを使用していないのですか? TextViewとEditTextを同じ時間に保つことができ、一度に1つだけを表示できます。 EditTxtのバックグラウンドでプレイする必要はなく、フォーカスとリスナーに問題が生じます。 –

答えて

0
 button.setOnClickListener(new OnClickListener() {  
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       editText.setBackgroundColor("to ur specified colour"); 
      } 
     } 
0

、あなたは以下のとおりの背景を透明にすることができます....

android:background="#00000000" 

そして、あなたが国境をしたい場合はクリックしたとき、あなたはとの国境に画像を設定することができますプログラム的背景...

2

はmain.xml

<EditText 
     android:id="@+id/et" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textColor="#f00" 
     android:text="hello" 
     android:background="#000" 
     android:padding="5dip"/> 
で以下のようにあなたのEditTextを使用してくださいは、私はそれはあなたを助けることを願っていたJavaファイルに以下のよう 描画可能フォルダ

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <solid android:color="#fff"/>  
    <corners android:radius="3dip" /> 
    <stroke android:color="#00f" 
     android:width="2dip" /> 
</shape> 

Writeボタンをクリックしてリスナーにコード(bg.xml)の下

button.setOnClickListener(new View.OnClickListener() {   
     @Override 
     public void onClick(View v) { 
      et.setBackgroundResource(R.drawable.bg); 
     } 
    }); 

を入れてください。 必要に応じて色を変更する必要があります。

0

私はeditTextの背景にセレクタを使用します。焦点を当てたイメージはデフォルトのフォーカスイメージ、通常のイメージは透明です。その後、セレクタをEditTextのバックグラウンドとして設定し、OnClickListenerやプログラムによる修正は必要ありません。

関連する問題