首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >onClickListener问题

onClickListener问题
EN

Stack Overflow用户
提问于 2014-05-16 18:27:36
回答 3查看 79关注 0票数 1

所以我试着做一个简单的图像按钮:

代码语言:javascript
复制
<ImageButton
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/button_image" 
    android:contentDescription="@string/desc/>

xml:

代码语言:javascript
复制
public class MainActivity extends ActionBarActivity {
protected void onCreate1 (Bundle savedInstaceState){
    Bundle savedInstanceState;
    super .onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button button1  = (Button) findViewById (R.id.button1);

            View.setOnClickListener(new onClickListener () {
                public void onClick (View v) {
                    Toast.makeText(v.getContext(), "You clicked it. Genius.", Toast.LENGTH_SHORT).show();
                }
            });

但是它不断地出现错误:"The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (new onClickListener(){})"

我进口了android.view.View.OnClickLIstener;

代码语言:javascript
复制
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBarActivity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
import android.view.View.OnClickListener;
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-05-16 18:31:06

你应该这么做:

代码语言:javascript
复制
 button1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

            }
        });

使用button1检查大小写。

票数 2
EN

Stack Overflow用户

发布于 2014-05-16 18:33:30

若要使用onClickListener,请使用以下代码

代码语言:javascript
复制
        Button bTutorial1 = (Button) findViewById(R.id.tutorial1);
    bTutorial1.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub


        }
    });
票数 1
EN

Stack Overflow用户

发布于 2014-05-16 19:03:56

首先要知道的是,onclick处理程序实现了接口View.OnClickListener。您需要创建一个实现接口的类,因为您需要添加已执行的代码。。

您的onClickListener应按以下方式使用:

代码语言:javascript
复制
 Button button1  = (Button) findViewById (R.id.button1);

        View.setOnClickListener(new onClickListener () {
            public void onClick (View v) {
                Toast.makeText(v.getContext(), "You clicked it. Genius.", Toast.LENGTH_SHORT).show();
            }
        });

通过内联创建类,如下所示:

代码语言:javascript
复制
findViewById(R.id.button1).setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
    //Inform the user the button has been clicked
   }

});

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23702265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档