我必须在Fragment中显示一个对话框。 DialogFragment的代码是:
public class DialogSintesi extends DialogFragment {
private TextView brownModelli;
private TextView brownArticoli;
private TextView blankModelli;
private TextView blankArticoli;
private TextView pedModelli;
private TextView pedArticoli;
public DialogSintesi() {
}
public static DialogFragment newInstance(String title) {
DialogFragment fragment = new DialogFragment();
Bundle args = new Bundle();
args.putString("title", title);
fragment.setArguments(args);
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.popup_campagne_salvate, container);
TextView brownModelli = (TextView) view.findViewById(R.id.textBrownModelliNumero);
TextView brownArticoli = (TextView) view.findViewById(R.id.textBrownArticoliNumero);
TextView blankModelli = (TextView) view.findViewById(R.id.textBlankModelliNumero);
TextView blankArticoli = (TextView) view.findViewById(R.id.textBlankArticoliNumero);
TextView pedModelli = (TextView) view.findViewById(R.id.textPedModelliNumero);
TextView pedArticoli = (TextView) view.findViewById(R.id.textPedArticoliNumero);
getDialog().setTitle("Sintesi Campagna");
return view;
}
}
我尝试将对话框显示到自定义数组适配器(按列表视图中的按钮)
info.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View arg0) {
showDialogSintesi();
}
});
方法showDialogSintesi是:
public void showDialogSintesi(String nome) {
android.app.FragmentManager fm = fragment.getFragmentManager();
DialogFragment dialog = DialogSintesi.newInstance("Info");
dialog.show(fm,"");
}
我尝试显示这个对话框,但是它的工作时间很长! 对不起我的英语不好。 THA
答案 0 :(得分:0)
检查您是否正在使用 android.support.v4.app或android.app在导入和声明片段相关变量的代码中始终如一。
答案 1 :(得分:0)
尝试使用onCreateDialog替换onCreateView:
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
View view = ((LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(
R.layout.popup_campagne_salvate, container);
TextView brownModelli = (TextView) view.findViewById(R.id.textBrownModelliNumero);
TextView brownArticoli = (TextView) view.findViewById(R.id.textBrownArticoliNumero);
TextView blankModelli = (TextView) view.findViewById(R.id.textBlankModelliNumero);
TextView blankArticoli = (TextView) view.findViewById(R.id.textBlankArticoliNumero);
TextView pedModelli = (TextView) view.findViewById(R.id.textPedModelliNumero);
TextView pedArticoli = (TextView) view.findViewById(R.id.textPedArticoliNumero);
builder.setView(view);
builder.setTitle("Sintesi Campagna");
Dialog dlg = builder.create();
return dlg;
}
其余的应该和你一样。 您可以在此过程中填写TextView。