0

我是 android 项目开发的初学者。我已经开始使用我在网上找到的教程开发一个基本的应用程序。我正在使用 eclipse。运行我的项目时没有错误。单击模拟器上的应用程序后,我立即收到此错误。在我使用的 rd xml 和 java 编码之后:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<TextView
    android:id="@+id/tvDisplay"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="@string/result"
    android:textSize="30sp" />

<Button
    android:id="@+id/a"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="@string/add"
    android:textSize="20sp" />

<Button
    android:id="@+id/s"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="@string/sub"
    android:textSize="20sp" /></LinearLayout>

爪哇:

package com.app.myapp;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

公共类 MainActivity 扩展 Activity {

int count;
Button add,sub;
TextView disp;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.linear);
    count=0;
    add=(Button) findViewById(R.id.a);
    sub=(Button) findViewById(R.id.s);
    disp=(Button) findViewById(R.id.tvDisplay);
    add.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            count=count+1;
            disp.setText("Result is " + count);

        }
    });
    sub.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            count=count-1;
            disp.setText("Result is " + count);
        }
    });
}
}

请提出解决方案,然后我应该继续我的项目开发。

4

1 回答 1

1
TextView disp;
disp=(Button) findViewById(R.id.tvDisplay);

您已将“disp”声明为 TextView;但是在代码中,您将其转换为 Button。像这样将演员更改为 TextView :

disp=(TextView) findViewById(R.id.tvDisplay);

于 2013-01-15T18:21:30.633 回答