ProgramingTip

java 클래스에서 android : windowSoftInputMode 값을 변경하는 방법이 있습니까?

bestdevel 2020. 10. 16. 07:45
반응형

java 클래스에서 android : windowSoftInputMode 값을 변경하는 방법이 있습니까?


windowSoftInputMode각 탭에 대해 서로 다른 속성 을 갖도록 탭을 작동하고 싶습니다 . 탭의 모든 처리가 하나의 단일 활동에서 수행 될 때 Java 클래스 에서이 속성에 액세스하는 방법은 무엇입니까?

Java 코드 에서이 매니페스트 속성에 액세스하는 방법이 있습니까?


활동에 대한 softInputMode를 변경하신 다음 사용하십시오.

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

다음을 사용하여 EditText의 softInput 유형을 변경하십시오.

mEditText.setImeOptions(EditorInfo.IME_ACTION_DONE);

수정을 위해 @Eliezer에게 감사드립니다.


Prasham의 의견 에 따르면 나는 이것을 사용하여 내 생명을 구했습니다! EditTextSoftWindowInput당신이 가진 레이아웃이있을 때-mode는 매우 버그가 ScrollView당신은 동적으로 작성된다.

이 게시물을 읽었지만 Prashan의 답변과 다른 답변 / 댓글을 계속 읽었거나 새 게시물에 작성하기로 결정했습니다.

내가 죽은 코드 아래 ScrollView:

Activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

탭에 두 가지 모드를 사용하는 것을 목표로합니다. 모드는 SOFT_INPUT_ADJUST_RESIZESOFT_INPUT_ADJUST_NOTHING입니다.

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

위의 코드 줄은 그 자체가 작동하지 않습니다. 앱은 항상 작동합니다 ADJUST_NOTHING. 단, AndroidManifest.xml 파일의 태그에 windowSoftInputMode="adjustResize"가 삽입 <activity>되면 앱 창 크기가 기본으로 조정됩니다. 또한 다음 전화를 걸 때

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);

예상대로 작동하고 크기가 조정되지 않습니다.

답변에 대한 PS 개선


프로그래밍 방식으로 다음 코드를 사용할 수 있습니다.

android.view.inputmethod.InputMethodManager imm = (android.view.inputmethod.InputMethodManager) context
                .getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);

Deepak 감사합니다


Xamarin Android에서는 다음과 같이 프로그래밍 방식으로 수행 할 수 있습니다.

 protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.DetailDesign);
             Window.SetSoftInputMode(SoftInput.AdjustPan);
        }

참고 URL : https://stackoverflow.com/questions/6138330/is-there-any-way-to-change-androidwindowsoftinputmode-value-from-java-class

반응형