2015-01-09 22 views
13

Tôi đã có một EditText tìm kiếm như thế này (với "lực hấp dẫn dưới"):vị EditText Trên Bàn phím

enter image description here

Khi tôi bấm EditText, bàn phím xuất hiện và tôi không thể nhìn thấy nữa những gì Tôi đang nhập (vì EditText hiện nằm sau bàn phím, ở phía dưới). Làm thế nào tôi có thể di chuyển các EditText tự động ngay phía trên bàn phím, khi nó đã được nhấn?

Cuối cùng, nó sẽ là tốt nếu nó sẽ trông như thế này:

enter image description here

Mã của tôi:

// LINEAR LAYOUT 
LinearLayout layout = new LinearLayout(getApplicationContext()); 
layout.setOrientation(LinearLayout.VERTICAL); 
setContentView(layout); 
// TEXTVIEW 
layout.addView(tv); 
// EDITTEXT 
et.setGravity(Gravity.BOTTOM); 
et.setInputType(InputType.TYPE_CLASS_TEXT); 
et.setImeOptions(EditorInfo.IME_ACTION_SEND); 
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT); 
         params.gravity = Gravity.BOTTOM; 
         et.setLayoutParams(params); // SOMETHING LIKE ONTOUCH -> MOVE UPWARDS 
         layout.addView(et); 
+0

Theo mặc định, Android tự động làm cho bạn. – droidd

+0

Nó đã được trả lời, như ở đây -> http://stackoverflow.com/questions/17410499/difference-between-adjustresize-and-adjustpan-in-android – fada21

Trả lời

22

Trong tập tin Manifest của bạn thêm đoạn mã sau cho hoạt động này đặc biệt

<activity android:windowSoftInputMode="adjustPan"> 

Kiểm tra this doc cho biết thêm.

+0

Nếu bạn nhận được một hoạt động từ mã, bạn cũng có thể thiết lập nó như thế này: 'activity.getWindow(). SetSoftInputMode (SOFT_INPUT_ADJUST_PAN);' – RoaflinSabos

4

sử dụng

android:windowSoftInputMode="stateVisible|adjustResize" 

tại của bạn Tệp kê khai. Xem developer site để bạn tham khảo

Các vấn đề liên quan