0

我对android开发很陌生。我正在尝试开发一个应用程序,我决定尝试下面的代码,但是当我尝试在模拟器上打开它时,我不断收到错误消息。请问谁能告诉我我做错了什么?

package hajara.android.MyRecipes;

import android.app.Activity;
import android.os.Bundle;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MyRecipesActivity extends Activity {
  Button btn;
  TextView t1, t2;
  EditText e;
  @Override
  public void onCreate(Bundle icicle) {
     super.onCreate(icicle);
     setContentView(R.layout.main);

     t1 = (TextView)findViewById(R.id.text1);
     t2 = (TextView)findViewById(R.id.text2);
      e = (EditText)findViewById(R.id.edit1);
     btn=(Button)findViewById(R.id.button1);

   btn.setOnClickListener((OnClickListener) this);
 }

}

我的 main.xml 文件是

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
    android:id="@+id/text1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Enter a string:"
/>

<EditText android:id="@+id/edit1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:cursorVisible="true"
    android:editable="true"
    android:singleLine="true"
/>
<Button android:id="@+id/button1"
    android:text="OK"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>

<TextView
    android:id="@+id/text2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text=""
/>

</LinearLayout>
4

2 回答 2

1

我认为您没有正确声明按钮。

    btn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            // Your Code Goes here
        }
    });

并希望您已在清单文件中声明您的活动。

于 2012-04-27T09:25:36.813 回答
1

您的 onClick 侦听器未正确完成。我发现简单地创建一个方法更容易,例如:

public void buttonOnClick(View v) {
    // Do something
}

并在您的 XML 布局文件(即 main.xml)中调用 onClick 属性:

<Button
    ...
    android:onClick="buttonOnClick"
    ...
/>
于 2012-04-27T09:26:07.667 回答