gpt4 book ai didi

java - 对话框后请求 EditText 时不显示键盘

转载 作者:行者123 更新时间:2023-12-01 11:05:12 25 4
gpt4 key购买 nike

我有一个问题。

我制作了自定义对话框(加载微调器)。我按下按钮。然后打开带有表格的 RelativeLayout 并编辑文本,其工作方式类似于搜索。

我的问题是,当我在按钮触摸和打开布局之间显示加载程序时,它专注于 EditText 但不显示键盘。当我不使用对话框时,它工作正常。我在前台和线程中尝试了它 - 相同的结果。

XML:

        <ProgressBar
android:layout_width="100dp"
android:layout_height="100dp"
android:indeterminateOnly="false"
android:id="@+id/loader_spiner"

android:background = "@xml/progress"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />

</RelativeLayout>

代码:

 public void prepareLoader(){
loader = new Dialog(context);
loader.setContentView(R.layout.ag_loader);
loader.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
spinerLoader = (ProgressBar) loader.findViewById(R.id.loader_spiner);
}

public void showLoader(){

spinerLoader.startAnimation(AnimationUtils.loadAnimation(this, R.xml.splash_spinner));
loader.show();
}

public static void hideLoader(){

loader.hide();

}

非常感谢。

最佳答案

在“loader.show()”中,您可以尝试使用以下代码来显示键盘:

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

或者:

loader.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);

或者:

loader.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);

或者如果不起作用,请再次尝试:

Handler delayedRun = new Handler();
delayedRun.post(new Runnable() {
@Override
public void run() {
youreditText.requestFocus();
InputMethodManager mgr = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.showSoftInput(youreditText, InputMethodManager.SHOW_IMPLICIT);
}
});

关于java - 对话框后请求 EditText 时不显示键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33036380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com