Android 在片段中单击按钮后,Toast不出现?

Android 在片段中单击按钮后,Toast不出现?,android,Android,我有一个按钮,当edittext文本字段输入正确时,它会转到另一页。但是,如果用户没有正确输入文本字段,我想做的是让祝酒词出现。错误检查确实有效,因为它会阻止用户进入下一页,即如果cardchecker字段中没有16个数字或cvv checker字段中没有3个数字 这是针对windows服务器的。我尝试在Toast.makeText()之后更改为getActivity().getApplicationcontext,此&getActivity public class DonateFragmen

我有一个按钮,当edittext文本字段输入正确时,它会转到另一页。但是,如果用户没有正确输入文本字段,我想做的是让祝酒词出现。错误检查确实有效,因为它会阻止用户进入下一页,即如果cardchecker字段中没有16个数字或cvv checker字段中没有3个数字

这是针对windows服务器的。我尝试在Toast.makeText()之后更改为
getActivity().getApplicationcontext
&
getActivity

public class DonateFragment extends Fragment {
    EditText cardno;
    Button buy;


    @Override
    public View onCreateView(LayoutInflater inflater,  ViewGroup container, Bundle savedInstanceState) {
        final View rootView = inflater.inflate(R.layout.fragment_donate,container,false);
        final EditText cardcheck1 =(EditText) rootView.findViewById(R.id.cardno);
        final EditText sortcheck1 =(EditText) rootView.findViewById(R.id.sortcode);
        final EditText cvvcheck1 =(EditText) rootView.findViewById(R.id.cvv);
        final EditText amountcheck1 =(EditText) rootView.findViewById(R.id.amount);
        Button buy = (Button) rootView.findViewById(R.id.buy);


            buy.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String cardcehcker = cardcheck1.getText().toString();
                    String sortchecker = sortcheck1.getText().toString();
                    String cvvchecker = cvvcheck1.getText().toString();
                    String amountchecker = amountcheck1.getText().toString();
                    if (cardcehcker.trim().length() == 16){
                        if (cardcehcker.trim().length() < 16){
                        Toast.makeText(getActivity(), "Error", Toast.LENGTH_SHORT).show();
                        }
                            if (sortchecker.trim().length() == 6)
                                if (cvvchecker.trim().length() == 3)
                                    if(amountchecker.trim().length()>0){
                                    {
                                        Intent in = new Intent(getActivity(), Donation_thankyou_activity.class);
                                        startActivity(in);
                                    }}}}
            });
        return rootView;
    }
}
公共类DonateFragment扩展了片段{
编辑文本卡号;
按钮购买;
@凌驾
CreateView上的公共视图(布局、充气机、视图组容器、捆绑包保存状态){
最终视图根视图=充气机。充气(右布局。碎片,容器,假);
final EditText cardcheck1=(EditText)rootView.findViewById(R.id.cardno);
final EditText sortcheck1=(EditText)rootView.findViewById(R.id.sortcode);
final-EditText-cvvcheck1=(EditText)rootView.findViewById(R.id.cvv);
final EditText amountcheck1=(EditText)rootView.findViewById(R.id.amount);
Button buy=(Button)rootView.findViewById(R.id.buy);
buy.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
字符串cardcehcker=cardcheck1.getText().toString();
字符串sortchecker=sortcheck1.getText().toString();
字符串cvvchecker=cvvcheck1.getText().toString();
字符串amountchecker=amountcheck1.getText().toString();
如果(cardcehcker.trim().length()=16){
如果(卡德切克饰件().length()<16){
Toast.makeText(getActivity(),“Error”,Toast.LENGTH_SHORT.show();
}
如果(sortchecker.trim().length()==6)
如果(cvvchecker.trim().length()==3)
如果(amountchecker.trim().length()>0){
{
Intent in=新的Intent(getActivity(),捐赠\感谢\活动.class);
星触觉(in);
}}}}
});
返回rootView;
}
}
如果用户没有正确输入土司,我希望会出现土司,但不会出现土司。

试试这个

public class DonateFragment extends Fragment {
    EditText cardno;
    Button buy;


    @Override
    public View onCreateView(LayoutInflater inflater,  ViewGroup container, Bundle savedInstanceState) {
        final View rootView = inflater.inflate(R.layout.fragment_donate,container,false);
        final EditText cardcheck1 =(EditText) rootView.findViewById(R.id.cardno);
        final EditText sortcheck1 =(EditText) rootView.findViewById(R.id.sortcode);
        final EditText cvvcheck1 =(EditText) rootView.findViewById(R.id.cvv);
        final EditText amountcheck1 =(EditText) rootView.findViewById(R.id.amount);
        Button buy = (Button) rootView.findViewById(R.id.buy);


            buy.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String cardcehcker = cardcheck1.getText().toString();
                    String sortchecker = sortcheck1.getText().toString();
                    String cvvchecker = cvvcheck1.getText().toString();
                    String amountchecker = amountcheck1.getText().toString();
                    if (cardcehcker.trim().length() == 16 && sortchecker.trim().length() == 6 && cvvchecker.trim().length() == 3 && amountchecker.trim().length()>0){
                        Intent in = new Intent(getActivity(), Donation_thankyou_activity.class);
                        startActivity(in);
                    }
                    else{
                        Toast.makeText(getActivity(), "Error", Toast.LENGTH_SHORT).show();
                    }
                }
            });
        return rootView;
    }
}
试试这个

public class DonateFragment extends Fragment {
    EditText cardno;
    Button buy;


    @Override
    public View onCreateView(LayoutInflater inflater,  ViewGroup container, Bundle savedInstanceState) {
        final View rootView = inflater.inflate(R.layout.fragment_donate,container,false);
        final EditText cardcheck1 =(EditText) rootView.findViewById(R.id.cardno);
        final EditText sortcheck1 =(EditText) rootView.findViewById(R.id.sortcode);
        final EditText cvvcheck1 =(EditText) rootView.findViewById(R.id.cvv);
        final EditText amountcheck1 =(EditText) rootView.findViewById(R.id.amount);
        Button buy = (Button) rootView.findViewById(R.id.buy);


            buy.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String cardcehcker = cardcheck1.getText().toString();
                    String sortchecker = sortcheck1.getText().toString();
                    String cvvchecker = cvvcheck1.getText().toString();
                    String amountchecker = amountcheck1.getText().toString();
                    if (cardcehcker.trim().length() == 16 && sortchecker.trim().length() == 6 && cvvchecker.trim().length() == 3 && amountchecker.trim().length()>0){
                        Intent in = new Intent(getActivity(), Donation_thankyou_activity.class);
                        startActivity(in);
                    }
                    else{
                        Toast.makeText(getActivity(), "Error", Toast.LENGTH_SHORT).show();
                    }
                }
            });
        return rootView;
    }
}

检查那些嵌套的
if
s中的逻辑。一个数字怎么可能既等于16又小于16?用你的if语句。它们相互矛盾。首先你要检查长度是否等于16,如果是,那么你要再次检查长度是否小于16。请不要为其他人做更多的工作y破坏您的帖子。通过在Stack Exchange网络上发布,您已在下授予Stack Exchange分发该内容的不可撤销权利(即,无论您未来的选择如何)。根据堆栈交换策略,帖子的非故意破坏版本是已分发的版本。因此,任何故意破坏行为都将被还原。如果您想了解有关删除帖子的更多信息,请参阅:检查嵌套的
If
s中的逻辑。一个数字如何既等于16又小于16?请发出If语句。它们在cont中与他们自己进行比较。首先检查长度是否等于16,如果是,然后再次检查长度是否小于16。请不要通过破坏您的帖子来为其他人做更多的工作。通过在Stack Exchange网络上发布,您已授予Stack Exchange在下的不可撤销的权利,以分发that内容(即,无论您未来的选择如何)。根据堆栈交换策略,发布的是未被破坏的帖子版本。因此,任何破坏行为都将被还原。如果您想了解有关删除帖子的更多信息,请参阅: