片段没有调用onClick

时间:2013-11-11 11:29:52

标签: java android android-fragments

我有一个实现onClickListener的Fragment。我所拥有的是一个自定义拨号器,它必须在edittext上显示引入的号码。但它没有显示任何内容。

这是碎片:

PhoneView.java

public class PhoneView extends Fragment implements OnTabChangeListener, OnClickListener {
...

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        mRoot = inflater.inflate(R.layout.phone_view, null);
        mTabHost = (TabHost) mRoot.findViewById(android.R.id.tabhost);
        setupTabs();
        return mRoot;
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        setRetainInstance(true);
        ...

        ImageButton button1 = (ImageButton) getView().findViewById(R.id.one);
        EditText numTxt = (EditText) getView().findViewById(R.id.digits);
        ...

        button1.setOnClickListener(this);  //UPDATED - ADDED
        ...
   }

    @Override
    public void onClick(View v) {
        switch (v.getId()){        
            case R.id.one:
               numTxt.setText(numTxt.getText()+"1");
               break;
            ...

2 个答案:

答案 0 :(得分:0)

您必须调用要对点击事件做出反应的视图的View.setOnClickListener(OnClickListener)

答案 1 :(得分:0)

在您的Activity类中,您需要将ClickListener定义为Phoneview按钮或其他“视图”

假设在你的活动类中,你有一个名为deleteButton的按钮,如果你想为这个按钮注册一个监听器......你就是这样做的。

private Button deleteButton= null;
deleteButton.setOnClickListener(PhoneView);