【问题标题】:How to add the OnClickListener Object in Android?如何在 Android 中添加 OnClickListener 对象?
【发布时间】:2014-02-18 23:16:35
【问题描述】:

我遇到了一个错误。无法添加 OnClickListener 对象。这是以下代码。

    @Override

    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) 
    {


        Activity act;

        View rootView = inflater.inflate(R.layout.abc, container, false);

        TextView tt=(TextView) rootView.findViewById(R.id.txt);

        Button button=(Button) rootView.findViewById(R.id.btn1);


        button.setOnClickListener(mFan); // Here i am getting the error //

        View.OnClickListener mFan = new OnClickListener() 
        {

            public void onClick(View v) 
            {


            }

        };

   }

我在 mFan OnClickListener 对象中遇到错误,

我收到 mFan 无法解析为变量

的错误

所以,请帮帮我,给我一些好的解决方案。

【问题讨论】:

    标签: android button view onclicklistener android-inflate


    【解决方案1】:

    您需要在引用它之前声明您的OnClickListener...

    View.OnClickListener mFan = new OnClickListener() 
    {
         public void onClick(View v) 
         {
             // stuff
         }
    };
    
    button.setOnClickListener(mFan);
    

    您还需要您的onCreateView 方法来返回View,所以不要忘记:

    return rootView;
    

    onCreateView 方法的底部...

    作为旁注,您可以使用 匿名 侦听器来完成同样的事情,如下所示:

    button.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {
            // your stuff       
        }
    });
    

    【讨论】:

    • 是的,你的意思是 OnClickListener mFan;但这也是我得到的错误。
    【解决方案2】:

    首先你必须创建监听器,

    View.OnClickListener mFan = new OnClickListener(){
         public void onClick(View v) 
         {
         }
    };
    

    然后你创建了一个OnClickListener 现在设置为你的button

    button.setOnClickListener(mFan);
    

    【讨论】:

    • 非常感谢,但您的第二个选项绝对正确。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 2020-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多