2017-04-02 110 views
0

我正在尝试Android开发人员“构建您的第一个应用程序”项目。我遵循了相应的说明,但我遇到了上述错误。无法找到符号变量editText

public class MainActivity extends AppCompatActivity { 

public static final String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

/** Called when the user taps the Send button */ 
public void sendMessage(View view) { 
    Intent intent = new Intent(this, DisplayMessageActivity.class); 
    EditText editText = (EditText) findViewById(R.id.**editText**); 
    String message = editText.getText().toString(); 
    intent.putExtra(EXTRA_MESSAGE, message); 
    startActivity(intent); 
} 

单击“运行”后,显示上述错误消息。尽管可以解析其余的值,editText变量仍保留为RED字体(我在上面以粗体显示)。 据Android开发者的网站,该代码块应该是这个样子:

public class MainActivity extends AppCompatActivity { 
public static final String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

/** Called when the user taps the Send button */ 
public void sendMessage(View view) { 
    Intent intent = new Intent(this, DisplayMessageActivity.class); 
    EditText editText = (EditText) findViewById(R.id.editText); 
    String message = editText.getText().toString(); 
    intent.putExtra(EXTRA_MESSAGE, message); 
    startActivity(intent); 
} 

为什么我不能够解决的EDITTEXT符号可有人请向我解释?谢谢!

回答

1

您需要确保这两个东西:

  1. 有一个在“activity_main.xml中”与android:id="@+id/editText"
  2. 要导入正确的R类的EditText元素。正确的应该是<applicationPackage>.R
1

这意味着你还没有创建ID为edit_text的资源。 Iniside你的XML确保你已经创建ID

<EditText 
         android:id="@+id/edit_text" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:textColor="@color/colorBlack" 
         android:textSize="14sp" 
         android:textStyle="normal"/> 

如果你已经创建的XML与ID请导入包的R

1

同样的事情发生在这里。

所有你需要做的是相应的XML文件中的变化,它是:

<EditText 
        android:id="@+id/Edit_Text + **smt else**" 

要:

<EditText 
        android:id="@+id/Edit_Text" 

如果你有类似的错误,遵循相同的procediment。我希望我帮助你!

相关问题