我有一个简单的应用程序,它有一个EditText和一个按钮。我的应用程序得到前两个编辑文本中的数字,当按下按钮时,最后一个EditText显示前两个EditText的和。到目前为止,我已经用活动完成了所有这些,但是我想用片段来完成这些。我有this源代码,有导航抽屉,在这段代码中尝试同样的操作时,setonclicklistener出现了问题
这是我的代码:

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;

public class FindPeopleFragment extends Fragment implements OnClickListener {
    EditText Num1, Num2, Eq;
    Button Sum;
    int S;

    public FindPeopleFragment() {
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle 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 OnClickListener(){
            public void onClick(View view)
            {
                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);

            }
        });

        return InputFragmentView;
    }
}

最佳答案

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;
}
}

关于android - fragment 中的setOnClickListener,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22561197/

10-11 04:18