【问题标题】:Android button click doesn't work and editing textbox with itAndroid按钮点击不起作用并用它编辑文本框
【发布时间】:2016-04-30 07:22:45
【问题描述】:

我是 Android 编码方面的新手,刚刚开始学习。我有一些图像按钮来更改文本框中显示的值,但我不知道该怎么做。我尝试了一些按钮测试,但有一些无法修复的错误。

来自 Eclipse 的消息是:

View类型中的setOnClickListener(View.OnClickListener)方法不适用于参数(new OnClickListener(){})

View类型中的setOnClickListener(View.OnClickListener)方法不适用于参数(new OnClickListener(){})

对于 setOnClickListener 和 OnClickListener

我看了这个帖子,但还是不知道该怎么办

setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (SequencerActivity) back.setOnClickListener(this);

除此之外,我想用按钮更改中等文本字段。也许是声明的整数。

代码:

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;


public class MainActivity extends Activity {

Button b1;
Button b2;
Button b3;
Button b4;
Button b5;
Button b6;
Button b7;
Button b8;
int vs,vh,ws,wh,wth,wts;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    b1=(Button) findViewById(R.id.imageButton1);
    b1.setOnClickListener(new OnClickListener()
    {
    protected void onClick(View v)
    {
        Toast.makeText(ApplicationContext(), "Om nom nom", Toast.LENGTH_SHORT).show();
    }
});
}

xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#012e53"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
tools:context="pl.tmalachowski.truewindcalc.MainActivity" >

<TabWidget
    android:id="@android:id/tabs"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="26dp"
                android:orientation="horizontal" >

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.5"
                    android:gravity="center"
                    android:orientation="vertical"
                    android:textColor="#bdc3c7" >

                    <TextView
                        android:id="@+id/textView9"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/ves"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.5"
                    android:gravity="center" >

                    <TextView
                        android:id="@+id/textView10"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/rel"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="40dp"
                android:orientation="horizontal" >

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.25"
                    android:gravity="center" >

                    <TextView
                        android:id="@+id/textView1"
                        android:layout_width="62dp"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/ves1"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.25"
                    android:gravity="center" >

                    <TextView
                        android:id="@+id/textView2"
                        android:layout_width="77dp"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/ves2"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.25"
                    android:gravity="center" >

                    <TextView
                        android:id="@+id/textView3"
                        android:layout_width="80dp"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/rel1"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.25"
                    android:gravity="center" >

                    <TextView
                        android:id="@+id/textView4"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="center"
                        android:text="@string/rel2"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:textColor="@color/podst" />
                </LinearLayout>
            </LinearLayout>

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="0.25"
                    android:gravity="center"
                    android:orientation="horizontal" >

                    <ImageButton
                        android:id="@+id/imageButton1"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:src="@android:drawable/arrow_up_float" />
                </LinearLayout>

【问题讨论】:

  • 发布您的 xml 布局

标签: java android eclipse


【解决方案1】:

我认为您的onClickListener 使用错误。

b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Toast.makeText(getApplicationContext(), "Om nom nom", Toast.LENGTH_SHORT).show();
        }
    });

请试试这个用法。希望对你有帮助

【讨论】:

  • 现在应用运行后崩溃了。
【解决方案2】:

像这样声明 ImageButton b1;代替按钮 b1; 然后改成下面这样的代码

b1=(ImageButton) findViewById(R.id.imageButton1);
b1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Toast.makeText(ApplicationContext(), "Om nom nom", Toast.LENGTH_SHORT).show();
        }
    });

【讨论】:

  • 还是一样的 setOnClickListener(new OnClickListener()
  • 您在 xml 布局中使用的是 ImageButton 还是 Button?
  • 我正在使用 ImageButtons
  • 仍然出现View类型中的setOnClickListener(View.OnClickListener)方法不适用于参数(new OnClickListener(){})
猜你喜欢
  • 2013-09-10
  • 2016-07-17
  • 1970-01-01
  • 2012-01-29
  • 2016-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多