访问main.xml中的变量

时间:2010-10-28 22:55:25

标签: android

我是Android编程的新手。我有一个看起来像这样的程序:

这是主要的java块:

public class MyAndroid extends Activity {
    private EditText input1;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mContext = this;
        setContentView(R.layout.main);
        input1 = (EditText) findViewById(R.id.input1);
}

这是我的main.xml文件的样子:

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout android:id="@+id/widget45"
 android:layout_width="fill_parent" android:layout_height="fill_parent"
 xmlns:android="http://schemas.android.com/apk/res/android">

 <EditText android:id="@+id/input1" android:layout_width="160px"
  android:layout_height="wrap_content" android:textSize="18sp"

  android:numeric = "decimal|signed"
  android:layout_x="8px" android:layout_y="13px">
 </EditText>

</AbsoluteLayout>

但是,我收到一条错误消息:

R.id.input1无法解析。为什么我不能从main.xml访问'input1'?

我在网上浏览过,但没有找到答案。

由于

2 个答案:

答案 0 :(得分:2)

很可能在导入android.R类而不是导入特定于应用程序的R类时会出现此问题。

答案 1 :(得分:0)

您的代码中有两个错误,最后需要另一个括号,而mContext = this;应该是Context mContext = this;,但您甚至不需要该行。这就是我能看到的一切。除此之外,它应该按预期工作。

编辑:除了你是一个绝对的初学者之外我没有在这里做任何事情,在这种情况下,你要做的事情应该从头到尾看起来完全一样(你的main.xml很好):

package com.myandroid; // This line may be different depending on what you named your    package when you created the project.

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;

public class MyAndroid extends Activity {
    private EditText input1;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);        
        setContentView(R.layout.main);
        input1 = (EditText) findViewById(R.id.input1);
    }
}
相关问题