1

所以我制作了一个 xml 文件来尝试访问一个简单的按钮 activity_first.xml 文件是:

package com.example.name.calling.proj;

<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/tvDisplay"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:gravity="center"
    android:text="This is my first project. This is a test."
    android:textSize="20dp" />

<Button
    android:id="@+id/bFirst"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_gravity="center"
    android:text="First Button" />

<Button
    android:id="@+id/bSecond"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_gravity="center"
    android:text="Second Button" />

<Button
    android:id="@+id/bThird"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_gravity="center"
    android:text="Third Button" />

<Button
    android:id="@+id/bFourth"
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:layout_gravity="center"
    android:text="Fourth Button" />

</LinearLayout>

然后我制作了Java程序,(只是开始部分)是;

package com.example.name.calling.proj;

import android.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.support.v4.app.NavUtils;

int counter; 
Button one, two, three, four;
TextView display;   

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_first);
    Button one = (Button) findViewById(R.id.bFirst)
    display = (TextView) findViewById(R.id.tvDisplay);

然后它有几个错误说:

activity_first cannot be resolved or is not a field.
bFirst cannot be resolved or is not a field.
tvDisplay cannot be resolved or is not a field.

所以,我在 xml 文件中设置的 ID 没有在 java 程序中被引用,我不知道为什么。我在整个互联网上进行了搜索,从 YouTube 到这个网站,不知道出了什么问题。

4

2 回答 2

0

您正在导入 android.R 而不是您自己的 R。只需删除该import android.R;行,错误就会消失。另外,不要在布局 xml 的顶部声明包。进行这些更改后,您可能需要“清理”您的项目。

于 2012-07-22T16:45:10.427 回答
0

你必须:

  1. package com.example.name.calling.proj;从布局文件中删除
  2. import android.R;从您的活动中删除
  3. 命名您的布局文件activity_first.xml,而不是main.xml
  4. 替换Button one = (Button) findViewById(R.id.bFirst)为,one = (Button) findViewById(R.id.bFirst)因为您将按钮一声明为 Activity 类的属性
  5. 清理你的项目
于 2012-07-22T17:00:49.123 回答