繁体   English   中英

android studio OnClicklistener第一次点击没有反应

[英]android studio OnClicklistener no reaction on first Click

您好,尽管我在尝试时可以听到Click声音,但我的OnClicklistener却没有获得第一声Click。 我只是在寻找解决方案,但没有找到适合我的解决方案。

XML格式

 <Button
    style="?android:attr/buttonStyleSmall"
    android:layout_width="140dp"
    android:layout_height="40dp"
    android:background="@drawable/button"
    android:text="@string/ButtonNO"
    android:onClick="KlickNo"
    android:id="@+id/NoKlickKopf"
    android:layout_toEndOf="@+id/imageView2"
    android:layout_below="@+id/imageView2"
    android:layout_alignLeft="@+id/button5"
    android:layout_alignStart="@+id/button5" />

爪哇

public void KlickYes(查看视图){

    Button button1 = (Button) findViewById(R.id.YesKlickKopf);
    button1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View view) {
            frage = frage + 1;

            switch (frage) {

                case 1: //error

                    break;
                case 2: //error

                    break;
                default:
                    break;
            }
        }
    });

}

public void KlickNo (View view) {
    Button button2 = (Button) findViewById(R.id.NoKlickKopf);
    button2.setOnClickListener(new OnClickListener() {

        final TextView mTextView = (TextView) findViewById(R.id.textViewkopffrage);
        final TextView tTextView = (TextView) findViewById(R.id.texttrivakskopf);
        @Override
        public void onClick(View v) {
            frage = frage + 1;

            switch (frage) {

                case 1: //error


                    break;
                case 2: //error

                    break;
                default:
                    break;
            }
        }
    });

}

您做错了。 您已经在xml中定义了onClick。 您不必在KlickNo函数内部创建onclick侦听器。 只需编写您想要执行的代码,即从KickNo中删除按钮声明和 onclicklistener。

您在这段代码中所做的是,您首先通过xml设置了一个void KlickNo (View view)以运行方法void KlickNo (View view)

然后您可以通过设置new OnClickListener(){ blah,blah}替换先前的设置来取消所有这些操作

您必须使用其中之一。 KlickNo方法由xml OnCLickListener设置的OnClick调用,因此直接在其中进行操作并删除.setOnClickListener(.....)声明。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM