2014-03-27 38 views
3

在我的應用程序中EditText在那裏被禁用,並且我想在這個edittext上實現長按選項(同時禁用模式),它允許從軟鍵輸入字符。啓用長按下的EditText(或按鈕)

例子: -

假設最初我允許用戶輸入一些數字到的EditText。經過一些操作,我需要禁用這個EditText。同樣,如果用戶想要更改先前他在editText中輸入的數字,那麼首先他需要長按這個editText。 在長按這個editText之後,editText獲取啓用,並且用戶將能夠改變或重新輸入該編號。在更改editText中的數字之前,我需要執行一些操作,並且在操作過程中,用戶無法更改editText中的數字。

代碼: -

<EditText 
     android:id="@+id/eTextBillNoFrmReturn" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_marginRight="2dp" 
     android:layout_weight="7" 
     android:clickable="true" 
     android:background="@drawable/custom_edit_text" 
     android:inputType="number" /> 

@Override 
public boolean onLongClick(View v) { 
    // do some operation 
    return false; 
} 

但是這個代碼只工作的EditText是啓用。當EditText被禁用時長按不起作用。

+1

我認爲應該是可能的OnTouchListner看到這裏http://stackoverflow.com/questions/10853117/can-i-make-一鍵出現禁用並仍然聽取點擊 – Hardik

+0

你有解決方案嗎? – Hardik

+0

@Hardik ...不,我沒有得到解決方案..你在這裏提供的鏈接是按鈕的問題。但在我的情況下,它是EditText。如果我將更改editText的背景,使其看起來像禁用,那麼在那個時候用戶也可以輸入文本。 –

回答

-1

您是否嘗試過通過

return true; 

onLongClick(View v)方法來替代

return false; 

+0

當editext被禁用如何點擊? – Hardik

+0

@Colombet Josselyn ...雅我試過這個,但它不工作。 –

+0

@Hardik ...我知道如果按鈕被禁用,那麼我不能做任何事情。但我是如何完成這項任務的。 –

-1

用撥動按鈕,將完美的適合你的情況 Toggle Button

+0

@SFN ...我不能用按鈕或切換按鈕替換EditText ...因爲在按鈕用戶不能輸入文字.... –

0
Try this one. 

@Override 
public boolean onLongClick(View v) { 
    // do some operation 
btnname.setenable(true); 
btnname.setfocusable(true); 
    return false; 
} 
+0

對不起兄弟...上面的代碼不工作.... –

+0

其實你之前說過的執行你的長按按鈕將啓用它的儀式,或者它將在btn點擊後執行? – Sethu