吐司没有显示
我使用的凌空抽射为网络呼叫吐司没有显示
土司凌空请求没有显示。我不知道如何从片段中获取警报对话框中的上下文。所以请给我一个解决方案,让我可以在凌空响应中打印吐司。
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;
}
}
只是做你用吐司
Toast.makeText(getActivity(),"Text!",Toast.LENGTH_SHORT).show();
虽然这段代码可能会解决这个问题,但应该总是添加一个解释来解释为什么/如何解决问题。 – BDL
Toast.makeText(dialog.getContext(),"Task is Completed",Toast.LENGTH_LONG).show();
使用此正确使用。
你不能触摸UI从后台线程
要显示敬酒使用此代码
activity.runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(activity, "Hello", Toast.LENGTH_SHORT).show();
}
});
或请求得到失败,而不是调用该onResponse功能。
他没有运行任何线程兄 –
这个东西是一个后台进程,它也是线程最终StringRequest stringRequest = new StringRequest(Request.Method.GET,url_menu,new Response.Listener
volley管理所有本身,甚至它的背景 –
使用:
Toast.makeText(getActivity().getApplicationContext(),"Task is
Completed",Toast.LENGTH_LONG).show();
Toast.makeText(dialog.getActivity(),"Task is Completed",Toast.LENGTH_LONG).show();
虽然这段代码可能会回答这个问题,但提供关于_how_和/或_why_的附加[context](https://meta.stackexchange.com/q/114762)它解决了问题会改善斯威尔的长期价值。请记住,你正在为将来的读者回答这个问题,而不仅仅是现在问的人!请[编辑](http://stackoverflow.com/posts/43230652/edit)您的答案添加一个解释,并指出适用的限制和假设。它也不会提到为什么这个答案比其他答案更合适。 –
这里【答案】(http://stackoverflow.com/questions/3134683/android-toast-in-a-thread) –
您是否获得日志消息响应? –
欢迎来到StackOverflow!谢谢 –