繁体   English   中英

如何从 android 中的片段开始活动?

[英]How to start an activity from fragment in android?

我想要一个活动并在单击片段按钮将活动更改为第二个活动时使用片段

示例:在登录活动中,我单击注册...如果创建用户将活动更改为主要活动并完成登录活动...

这是我的片段代码:

        View view = inflater.inflate(R.layout.fragment_register, container, false);
    edUsername = view.findViewById(R.id.edUser);
    edUserEmail = view.findViewById(R.id.edEmail);
    edUserPhone = view.findViewById(R.id.edPass);
    edUserPassword = view.findViewById(R.id.edPassword);
    btnLogin = view.findViewById(R.id.btnLogin);
    btnRegister = view.findViewById(R.id.btnRegister);

    btnRegister.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            final ProgressDialog loader = ProgressDialog.show(getContext(),
                    "Inserting...", "please wait",
                    false, false);


            StringRequest request = new StringRequest(Request.Method.POST, Config.register_api,
                    new Response.Listener<String>() {
                        @Override
                        public void onResponse(String response) {
                            if (response.equals("a user with same information existing")) {
                                loader.dismiss();
                                Toast.makeText(getContext(), response, Toast.LENGTH_SHORT).show();
                            }else {
                                loader.dismiss();
                                Toast.makeText(getContext(), response, Toast.LENGTH_SHORT).show();
                            }
                        }
                    }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Toast.makeText(getContext(), error.toString(), Toast.LENGTH_SHORT).show();
                    loader.dismiss();
                }
            }) {
                @Override
                protected Map<String, String> getParams() {
                    Map<String, String> params = new HashMap<>();
                    params.put("username", edUsername.getText().toString().trim());
                    params.put("userphone", edUserPhone.getText().toString().trim());
                    params.put("useremail", edUserEmail.getText().toString().trim());
                    params.put("userpassword", edUserPassword.getText().toString().trim());

                    return params;
                }
            };

            RequestQueue requestQueue = Volley.newRequestQueue(getContext());
            requestQueue.add(request);
        }
    });

    btnLogin.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            
        }
    });
    return view;

如果你想从Fragment开始新的Activity ,你可以使用:

Intent intent = new Intent(getActivity(), NewActivity.class); // creating new intent
startActivity(); // starting new activity with intent
getActivity().finish(); // finish current activity

只需将其插入您要开始新活动的代码中。

如果你想从另一个Activity Activity这个:

Intent intent = new Intent(CurrentActivity.this, NewActivity.class);
startActivity();
finish();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM