假设我有两个viewController,StringRequest stringRequest = new StringRequest(Request.Method.POST, URL_POST, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject msgjson = new JSONObject(response);
Log.d("aaaaa", String.valueOf(msgjson));
Log.d("aaa", "aaa");
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.d("aaa", "aaa");
Toast.makeText(MainActivity.this, "error", Toast.LENGTH_SHORT).show();
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
String id = "524901";
String units = "metric";
String appid = "67aa03cd6bedc6f6fb6f9f506968f3d6";
params.put("id", id);
params.put("units", units);
params.put("appid", appid);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
和AViewController
。 BViewController
嵌入了AViewController
(来自菜单&#34;编辑器&gt;嵌入式&gt; NavigationController&#34;)。通过NavigationController
中的按钮操作,它会将用户推送到AViewController
(使用segue)。现在,用户可以在BViewController
中按AViewController
返回backButton
。
但奇怪的是,在BViewController
中,如果我从左向右交换屏幕,似乎从堆栈中删除视图并显示BViewController
。我不想要这个交换。我想只使用后退按钮去往前一个viewController,在这种情况下是AViewController
。我怎么能停止这个交换?
提前致谢。
PS:我没有在整个项目中添加任何类型的手势
答案 0 :(得分:1)
在AViewController
中添加ViewDidLoad
下面的行以禁用导航控制器的交互式弹出窗口。那么一切都应该像你想要的那样。
self.navigationController.interactivePopGestureRecognizer.enabled = NO;