TextView不可访问

时间:2013-06-25 05:41:54

标签: java android

我是Android新手。我正在制作一个随机生成器程序,在按钮点击时会生成一个数字并在textview上显示它。当我输入R.id.时,我无法访问textview,但我没有得到textview的名称,但我得到了其他组件的名称。我的布局代码是: -

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="horizontal">
    <EditText android:id="@+id/edit_message"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:hint="@string/edit_message" />

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

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_send"
        android:onClick="sendMessage" />

</LinearLayout>

Java代码是: -

public void sendMessage(View view) {
        // Do something in response to button
        EditText editmessage = (EditText)findViewById(R.id.edit_message);
        String message = editmessage.getText().toString();
        Random r=new Random();
        int i1=(r.nextInt(80) +65);
        message += "\n " + i1;


        // Create the text view

        TextView textView = (TextView) findViewById(R.id.); // not able to access R.id.txt02        

    }

2 个答案:

答案 0 :(得分:0)

问题很可能是您的R.java文件尚未使用您添加的EditText进行更新。在eclipse中,您可以强制执行此更新。在评论中尝试Michal Z.所提到的Project->Clean

您还可以通过选中Project->Build Automatically选项将选项设置为在eclipse中自动构建。这将确保eclipse每次保存项目时都会自动构建项目并更新R.java文件。

答案 1 :(得分:0)

如果清理你的项目没有帮助,我会检查你的源文件,以确保你的导入中没有一行说“import android.R”,因为这将导入标准的Android R对象(不会不包括您声明的任何资源。 Eclipse有时会在您剪切和粘贴代码时执行此操作,这可能令人沮丧,但删除导入和清理/构建项目应修复它。