2011-01-05 3 views
8

활동에있는 ScrollView이 = "adjustResize는"구조 용 레이아웃 ->있는 ScrollView - 있는 LinearLayout> TableLayout을 내가 글고가있는 TableLayout을 아래 안드로이드 : windowSoftInputMode 내가했습니다 때 이미 나는이와 활동을

, 어느 I 키보드가 활성화되어있을 때 위로 스크롤하려고합니다. 그래서 내가 만든 한 몇 가지 독서에 따라, 내가 추가 :

android:windowSoftInputMode="adjustResize" 

의 AndroidManifest.xml에, 관련 활동 및 activity.xml 파일에있는 ScrollView 래퍼를 추가, 그래서 활동의 레이아웃 구조 다음과 같이 지금 : 있는 ScrollView ->의 LinearLayout ->있는 ScrollView -> TableLayout을

문제 : 내부있는 ScrollView 지금은 작동하지 않습니다 ... 나는 ... 만졌을 때 포장에있는 ScrollView가 장악 추측

이 문제를 어떻게 해결할 수 있습니까?

도움이 될 것입니다. 감사합니다. .

+0

scrollview가 다른 scrollview의 어딘가에있는 상황을 피하십시오. 당신은 그것을 잡을 수 있지만, 이것은 반드시 필요한 것은 아닙니다. 나는 prob를 얻었다. linearlayout> scrollview> tablelayout으로 문제를 해결할 수 있습니다. 내부 스크롤 뷰가 자동으로 올바른 크기로 조정됩니다. 나는 또한 "stateVisible"을 inputMode 옵션 –

+1

에 추가하도록 권하고 싶습니다.하지만 전체 활동을 ScrollView로 랩핑하지 않으면 edittext를 클릭 할 때 액티비티의 크기가 조정되지 않습니다 ... 아니면 내가 잘못 되었습니까? 나는 그것없이 시도해 보았고, Activity는 키보드로 스크롤되지 않았다. 키보드는 단지 EditText를 덮었다 ... – ofirbt

답변

10

가상 키보드가 내 화면에서 EditTexts를 숨기고있는 것과 동일한 문제에 직면했습니다.

android:windowSoftInputMode="stateVisible|adjustResize|adjustPan" 

이 또한 내가 활동의 한 OnCreate 함수에서 다음 코드를 추가하는 데 필요한 : 나는 매니페스트 파일에서 활동 태그의 다음과 같은 속성을 도입

this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

이 문제를 해결하고 완벽하게 잘 작동 모든 해상도 에뮬레이터와 삼성 기기에. 그래도 Google Nexus S 기기에서는 실패했지만 가상 키보드가 EditText를 숨기는 동일한 문제를 다시 볼 수있었습니다.

+11

이것은 적어도 조금 잘못되었다. [windowSoftInputMode에 대한 문서] (http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft)에 따르면 여러 개의 '조정'매개 변수를 설정할 수 없습니다. 감각). – Timmmm

+2

설명서에 여러 값을 설정할 수 없다는 내용이 나와 있지 않습니다. 결과가 정의되지 않았기 때문에 약간의 해킹 일뿐입니다. – fejd

+0

이 문제를 해결 한 후 내 'EditText' 입력 지연 문제 (최대 5 초 지연)가 발생했습니다. 고맙습니다. –

관련 문제