2014-07-26 86 views
0

我有一個edittext。第一次我的EditText的settext是1,我想在editttext click並輸入新的鍵盤清除這個文本值 我寫的代碼,但不工作android清除ediitext onclicklistener

price_counter = (EditText) rootView 
      .findViewById(R.id.strada_price_counter); 
price_counter.setText("1"); 

price_counter.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     price_counter.setText(""); 

    } 
}); 


<EditText 
     android:id="@+id/strada_price_counter" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBottom="@+id/strada_buy_btn" 
     android:layout_marginLeft="18dp" 
     android:layout_toRightOf="@+id/strada_buy_btn" 
     android:background="@drawable/input_value" 
     android:gravity="center" 
     android:inputType="number"> 
</EditText> 

這個代碼,如果有人不工作知道解決方案,請幫我

+0

請出示你找到/創建price_counter變量的代碼。 – Simas

+0

我更新我的代碼先生 – BekaKK

回答

1

你不應該EditTextsetOnClickListener。註冊點擊一個按鈕的監聽器,然後在點擊按鈕時調用settextEditText

+0

沒有sir.meybe你沒有undertad me.default我的edittext中的settext是1,當我點擊我的edittext我想刪除這個1並從鍵盤輸入新值 – BekaKK

0

更新您的代碼如下:

price_counter.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     ((EditText)v).setText(""); 
    } 
}); 
0

試試這個代碼...這可能是你正在尋找

public class MainActivity extends Activity implements OnTouchListener 
{ 
    EditText et; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     et=(EditText)findViewById(R.id.editText1); 
     et.setText("1"); 
     et.setOnTouchListener(this); 
    } 
    @Override 
    public boolean onTouch(View v, MotionEvent event) 
    { 
     // TODO Auto-generated method stub 
     if(event.getAction() == MotionEvent.ACTION_DOWN) 
     { 
      et.setText(""); 
     } 
     return false; 
    } 

} 
+0

你可以替換我的編輯文本ID和你的變量...或者你可以直接運行這個代碼.... –