【发布时间】:2017-04-05 09:20:53
【问题描述】:
我正在使用 volley 进行网络通话
齐射请求中的 Toast 未显示。我不知道如何从 fragment 获取警报对话框中的上下文。所以请给出我如何在凌空响应中打印吐司的解决方案。
public class TiffinMenuFragment extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final AlertDialog.Builder alertdialog = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = (LayoutInflater) getActivity().getBaseContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.fragment_tiffinlayout, null);
alertdialog.setView(v);
alertdialog.setCancelable(false);
final AlertDialog dialog = alertdialog.create();
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
String type=selectmenu.getSelectedItem().toString();
Log.v("java1",type);
String url_menu=UrlString.url_string;
url_menu = url_menu.replace(" ", "%20");
Log.v("url",url_menu);
final StringRequest stringRequest=new StringRequest(Request.Method.GET, url_menu, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.v("Response",response);
JSONObject obj= null;
try {
obj = new JSONObject(response);
String objResponse=obj.getString("success");
Log.v("Response1",objResponse);
Toast.makeText(view.getContext(),"Task is Completed",Toast.LENGTH_LONG).show();
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.v("type",error.getMessage());
}
});
MySingleton.getInstance(getActivity().getApplicationContext()).addToRequestque(stringRequest);
dialog.dismiss();
}
});
cancle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dialog.dismiss();
}
});
return dialog;
}
}
【问题讨论】:
-
这里是answer
-
您是否收到日志消息以进行响应?
-
欢迎来到 StackOverflow!请阅读用户指南,了解如何在发布问题之前提出好问题 (stackoverflow.com/help/how-to-ask) 谢谢
-
设置
getActivity()而不是view.getContext() -
是的,我收到日志消息@Mohammed Atif
标签: android android-fragments android-volley android-alertdialog