2014-10-30 56 views
0

你好,我是新的android開發。在android中的EditText方法android

java中是否存在等價於#.gotFocus的方法?

在java中有一個事件列表,我可以在c#visual studio中觀看和選擇嗎?

我試圖做#.Focus或類似的東西,但沒有成功。

欲重現以下方案:

1- EditText上具有一定的暗示=>「輸入值」

2-用戶點擊編輯文本和提示消失=>「」

3-用戶填寫一定值=>「確定值」

感謝對傭工:)

回答

1

羅恩亞明,如果我正確理解你的疑問,你想要的是:

1有文字的領域,爲用戶鍵入單詞/數字等 - >這就是所謂的EditText在Android中

2-提示用戶知道輸入什麼 - >例如。 「鍵入你的名字」

3-並以某種方式對焦點做出反應。

您將通過XML或代碼實現第一個目標。如果你在佈局文件夾中有一個main.xml文件(假設你使用eclipse/android studio進行開發),你可以使用該界面將編輯文本拖動到android屏幕上。

第二個你仍然會通過XML來實現。如果你右鍵點擊它,屏幕右​​側會有一個叫做禮節的小窗口,你可以改變諸如高度,寬度和提示等。輸入你的提示。

最後,您需要在.java中轉到您的代碼並獲取編輯文本(findViewById)的引用。

通過setOnClickListener或setOnFocusChangeListener。

更多信息,你可以在這裏籤: http://developer.android.com/guide/topics/ui/controls/text.html

我用Google搜索的教程,你可以用更詳細的信息,並一步一步的指導檢查。 希望它能幫助:

http://examples.javacodegeeks.com/android/core/widget/edittext/android-edittext-example/

+0

正是我所期待的。謝謝:) – RonYamin 2014-10-30 23:13:15

+0

你知道爲什麼我的函數CheckBox.isSelected()不起作用嗎? (我選中了複選框,但它沒有進入我的if) – RonYamin 2014-10-30 23:19:37

+0

您想在用戶選擇它時接收事件,還是間接檢查值? (例如,用戶選中複選框,然後單擊一個按鈕,然後驗證該複選框是否已被選中) – nunofmendes 2014-10-31 09:22:13

0

看來你改變了你的問題退出有點,我的C#無知已經得到了我最好的。

看來你真正想要的是一個EditText,你正在尋找的示例文本是提示。

您可以在xml文件中設置提示,或者使用.setHint(string)方法設置代碼。

下面是從哪裏開始:http://developer.android.com/guide/topics/ui/controls/text.html

編輯3 - 在android系統的事件通過使用監聽器處理。你可以使用onClickListener來實現你想要的。

textView.setOnClickListener(new View.OnClickListener(){ 
    @Override 
    public void onClick(){ 
    //dostuff 
    } 
} 
+0

這不是我的問題,我想要一個功能,當用戶設置焦點時做些什麼..請參閱我的編輯。 – RonYamin 2014-10-30 22:40:09

+0

它不TextView它的TextField。 – RonYamin 2014-10-30 22:40:30

+0

編輯了一下,有很多方法可以處理android中的事件,但我認爲你想要的是一個onclicklistener。 – jvrodrigues 2014-10-30 22:45:47

0

假設你的文本框是EditText一個實例(它可能應該是),你可以做到以下幾點:

textfield.setOnFocusChangeListener(new OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     if(hasFocus){ 
      // this is where you would put your equivalent #.gotFocus logic 
     } 
    } 
}); 

值得一提的是,你所描述的行爲,可以通過以下方式實現使用textfield.setHint。該提示是當用戶選擇EditText時自動清除的文本。它專爲您所描述的情況而設計,例如textfield.setHint("Enter a Value")

0

我不熟悉C#,但我猜你想的時候得到的EditText焦點事件被解僱。試試這個

EditText txtEdit= (EditText) findViewById(R.id.edittxt); 

txtEdit.setOnFocusChangeListener(new OnFocusChangeListener() {   

    public void onFocusChange(View v, boolean hasFocus) { 
     if(hasFocus){ 
        // do the job here when edittext get focus 
     } 
    } 
});