如何在片段中创建微调器? [英] How can I create a spinner within a fragment?
本文介绍了如何在片段中创建微调器?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在片段中创建微调器,但是在进行微调器对话框时,它无法使用".this"识别片段Java类.我不确定应该怎么做,任何帮助将不胜感激.(对话框是在OnCreate方法中定义的)
I'm trying to create a spinner in a fragment but while making the spinner dialog it fails to recognize the fragment java class using ".this". I'm not sure what I should be doing instead and any help would be greatly appreciated. (Dialog is defined in OnCreate method)
ArrayList<String> ingredients = new ArrayList<>();
SpinnerDialog spinnerDialog;
Button add;
spinnerDialog = new SpinnerDialog(Add.this, ingredients, "Select An Ingredient");
spinnerDialog.bindOnSpinerListener(new OnSpinerItemClick() {
@Override
public void onClick(String Ingredient, int i) {
Toast.makeText(Add.super.getContext(), "Selected ", Toast.LENGTH_SHORT).show();
}
});
add = (Button) getView().findViewById(R.id.add);
add.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
spinnerDialog.showSpinerDialog();
}
});
推荐答案
Add.this
是上下文参数.
如果 Add.class
是片段,则在传递上下文参数时使用 getActivity()
.
If Add.class
is a fragment, use getActivity()
when passing the context parameter.
但是,如果 Add.class
是一项活动,则改为 Add.this
.
But if Add.class
is an activity, is Add.this
instead.
这篇关于如何在片段中创建微调器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文