setOnClickListener in fragment

前端 未结 3 1490
梦如初夏
梦如初夏 2021-01-22 06:51

I have simple application which has 1 Edittext and 1 Button.My application get the numbers in the first two Edit text and when the button is pressed the last EditText show the s

相关标签:
3条回答
  • 2021-01-22 06:58
    package info.androidhive.slidingmenu;
    
    import android.app.Fragment;
    import android.content.DialogInterface;
    import android.content.DialogInterface.OnClickListener;
    import android.os.Bundle;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
     public class FindPeopleFragment extends Fragment {
    EditText Num1, Num2, Eq;
    Button Sum;
    int S;
    
    public FindPeopleFragment() {
    }
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
    
        super.onCreateView(inflater, container, savedInstanceState);
        View InputFragmentView = inflater.inflate(
                R.layout.fragment_find_people, container, false);
        Num1 = (EditText) InputFragmentView.findViewById(R.id.Num1);
        Num2 = (EditText) InputFragmentView.findViewById(R.id.Num2);
        Eq = (EditText) InputFragmentView.findViewById(R.id.Eq);
        Sum = (Button) InputFragmentView.findViewById(R.id.Sum);
        ;
    
        Sum.setOnClickListener(new View.OnClickListener() {
    
            @Override
            public void onClick(View v) {
                String N1 = Num1.getText().toString();
                int N11 = Integer.parseInt(N1);
    
                String N2 = Num2.getText().toString();
                int N22 = Integer.parseInt(N2);
    
                S = N11 + N22;
    
                Eq.setText("" + S);
                Toast.makeText(getActivity(), "your Sum is : " + S,
                        Toast.LENGTH_LONG).show();
            }
        });
        return InputFragmentView;
    }
    }
    
    0 讨论(0)
  • 2021-01-22 07:12

    Or just leave it like this, but remove the implementation of OnClickListener. ex: public class FindPeopleFragment extends Fragment implements OnClickListener { ... }

    0 讨论(0)
  • 2021-01-22 07:13

    Try it this way:

    Sum = (Button) InputFragmentView.findViewById(R.id.Sum);
    
    Sum.setOnClickListener(this);
    
    return InputFragmentView;
    }
    
    
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.Sum:
                String N1 = Num1.getText().toString();
                int N11 = Integer.parseInt(N1);
    
                String N2 = Num2.getText().toString();
                int N22 = Integer.parseInt(N2);
    
                S = N11 + N22;
    
                Eq.setText("" + S);
                break;
        }
    }
    

    Anyway, post your Logcat output to know which is the problem you are facing

    0 讨论(0)
提交回复
热议问题