2011-01-13 40 views
18

Tôi đã đọc một số bài đăng khác và sử dụng input.setInputType (TYPE_NUMBER_FLAG_DECIMAL); không mở bàn phím nhưng nó không phải là bàn phím sốCách hiển thị bàn phím số

Có mẹo nào cho điều này không?

Trả lời

22

cho android:inputType="number" bên trong tập tin xml của bạn

Chỉnh sửa: "Số" không hoạt động, đổi thành "số" (chữ thường N)

+0

Chỉnh sửa đang ở trên cửa sổ bật lên bằng trình tạo nên không có xml. Tôi nghĩ rằng setInputType thực hiện điều tương tự như làm điều đó trong XML –

11

a) trong xml

android:numeric="decimal" 

b) mã số

EditText editView = new EditText(this); 
editView.setKeyListener(new DigitsKeyListener()); 
5

Trong xml của bạn, bạn phải làm điều này:

android:inputType="Number" 

Trong code của bạn, làm:

editText.requestFocus(); 

Sau đó:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT); 

Đã cho tôi nhiều ngày để con số này ra . Tôi thậm chí đã thử editText.performClick(); Không làm việc.

2

Để bật lên một bàn phím số trên đầu của hoạt động này tôi sử dụng các bước sau:

Created chỉnh sửa văn bản lĩnh vực trong bố trí như:

<EditText 
     ... 
     android:inputType="number"  
     ... /> 

Trong chức năng onCreate() hiển thị mềm bàn phím

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0); 

Điều quan trọng nhất là tập trung chỉnh sửa văn bản trong phương pháp onResume.

@Override 
    public void onResume() { 
     super.onResume(); 
     editText.setFocusableInTouchMode(true); 
     editText.requestFocus(); 
    } 
Các vấn đề liên quan