我是android项目开发的初学者。我已经开始使用在线发现的教程开发基本应用程序。我正在使用eclipse。运行我的项目时没有错误。我点击模拟器上的应用程序后立即收到此错误。使用r d 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);
}
});
}
}
请提出解决方案,之后我应该继续进行项目开发。
答案 0 :(得分:1)
TextView disp;
disp=(Button) findViewById(R.id.tvDisplay);
您已将'disp'声明为TextView; 但是在代码中你将它转换为Button。将强制转换更改为TextView,如下所示:
disp =(TextView)findViewById(R.id.tvDisplay);