2013-04-04 37 views
1

我在我的應用程序中有三個EditText小部件,其中一個小部件的XML如下所示。他們主要工作,但問題是,實際的小部件是在我的設備屏幕的底部。當我點擊小部件,並顯示數字小鍵盤時,它完全覆蓋文本輸入窗口,我看不到我輸入的是什麼數字。我可以修改TextView,以便在我的設備上顯示小鍵盤時,它還顯示我當前輸入的號碼?EditText:如何在輸入時顯示數字?

<EditText 
    android:id="@+id/EditTextPrices"   android:layout_width="100dip" 
    android:layout_height="wrap_content"  android:inputType="number|numberDecimal" 
    android:singleLine="true"     android.imeOptions="actionDone"/> 

的另一個問題是,當我打完字,而不是返回我的主要活動屏合一數字,它帶來了下一個文本編輯插件的數字小鍵盤。我不希望發生這種情況。我曾經想過,設置android.imeOptions =「actionDone」會導致鍵盤消失,當我輸入完數字後會完成,但並非如此。我怎樣才能阻止「下一個」窗口出現?

回答

1

研究將android:windowSoftInputMode添加到您的清單文件。 「adjustPan」,因爲它的價值可能是你想要的,雖然我發現它有時無法解釋當你正在輸入東西時,通過單詞猜測的條形軟鍵盤上方的空間。

+0

當你說清單文件時,你的意思是AndroidManifest.xml。如果是這樣,我在哪裏把android:windowSoftInputMode? – 2013-04-04 21:27:08

+0

是的,在AndroidManifest.xml中。 再次查看鏈接,它是您的活動的xml元素的屬性。 cgv 2013-04-04 21:29:23

+0

好的。這工作。此外,它以某種方式解決了我在'下一個'中遇到的其他問題。謝謝! – 2013-04-04 21:36:05

1

將android:windowSoftInputMode =「adjustPan」添加到活動的清單中。這將導致活動向上滾動,以便聚焦的編輯文本始終顯示在屏幕上。

+0

當你說清單文件時,你的意思是AndroidManifest.xml? – 2013-04-04 21:28:31

+0

謝謝,這工作。 – 2013-04-04 21:36:27

1

其他的建議使用adjustPan是好的,另一個想法是把你的佈局在滾動視圖。

關於你的第二個問題,你如何處理actionDone?

例如,這是我如何隱藏鍵盤(或做他們想做什麼時,他們按完成)。

final EditText editTextPrices = (EditText) findViewById(R.id.editTextPrices); 
editTextPrices.setOnEditorActionListener(new OnEditorActionListener() { 
    @Override 
    public boolean onEditorAction(TextView view, int actionID, KeyEvent event) { 
     if (actionID == EditorInfo.IME_ACTION_DONE) { 
      InputMethodManager imm = (InputMethodManager) MyClass.this.getSystemService(Context.INPUT_METHOD_SERVICE); 
      imm.hideSoftInputFromWindow(bugemailaddress.getWindowToken(), 0); 
      // DO OTHER HANDLING OF INPUT HERE 
      return true; 
     } 
     return false; 
    } 
}); 
+0

ScrollView對我來說可能會有問題,因爲我在這個應用程序中也有ListViews,我'告訴他們兩個不會很好地合作。關於第二個問題,上面的答案以某種方式解決了它。謝謝。 – 2013-04-04 21:37:25

相關問題