gpt4 book ai didi

android - 单击按钮时隐藏键盘( fragment )

转载 作者:太空狗 更新时间:2023-10-29 15:32:20 26 4
gpt4 key购买 nike

我在点击按钮时实现隐藏键盘时出错,有人知道如何解决这个问题吗?实际上getSystemService和getWindowsToken中的代码错误

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_calculator, container, false);

Button hitung = (Button) rootView.findViewById(R.id.hitung);
final EditText height = (EditText)rootView.findViewById(R.id.height);
final EditText weight = (EditText)rootView.findViewById(R.id.weight);

InputMethodManager imm = InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(EditText.getWindowToken(), 0);

final TextView result = (TextView)rootView.findViewById(R.id.result);
final TextView finalresult = (TextView)rootView.findViewById(R.id.finalresult);
finalresult.setMovementMethod(new ScrollingMovementMethod());

hitung.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
..........
}

最佳答案

你正在使用 Fragment 所以写成 getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)

同样的原因:

An Activity extends Context, a Fragment does not. Hence, you first need to get a reference to the Activity in which the Fragment is contained

编辑

对于您在评论中提到的其他错误,您可以使用

getView().getWindowToken()

hide 方法应该在您的按钮的 onClick() 方法中调用,例如

imm.hideSoftInputFromWindow(getView().getWindowToken(), 0);

关于android - 单击按钮时隐藏键盘( fragment ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37209157/

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