Java 代码不工作(android)

Java 代码不工作(android),java,android,eclipse,Java,Android,Eclipse,我知道这是一个相当业余的问题,但我真的很沮丧: 我没有得到一个错误,但它只是不工作。(忽略包部分)包com.example.project1;导入android.app.Activity 这是java文件 package com.example.project1; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View;

我知道这是一个相当业余的问题,但我真的很沮丧: 我没有得到一个错误,但它只是不工作。(忽略包部分)包com.example.project1;导入android.app.Activity

这是java文件

 package com.example.project1;

 import android.app.Activity;
 import android.content.Intent;
 import android.os.Bundle;
 import android.view.View;
 import android.view.View.OnClickListener;
 import android.widget.Button;
 import android.widget.EditText;
 import android.widget.TextView;

public class Tictactoe2 extends Activity implements OnClickListener{
EditText et1 , et2; 
String str1 , str2;
Button b1;
TextView tv2;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub

    super.onCreate(savedInstanceState);
    setContentView(R.layout.ttt);
    et1 = (EditText) findViewById (R.id.et1);
    et2 = (EditText) findViewById (R.id.et2);
    tv2 = (TextView) findViewById (R.id.tv2);
    str1 = et1.getText().toString();
    str2 = et2.getText().toString();
    b1 = (Button) findViewById (R.id.b1);

    b1.setOnClickListener(this);


}
@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
    switch(v.getId())
    {

    case R.id.b1:
        tv2.setText(str1);
    /*Bundle bun = new Bundle();
    bun.putString("key", str1);
    bun.putString("key1", str2);;
    Intent intent = new Intent(tictactoe2.this , tictactoe.class);
    intent.putExtras(bun); 
    startActivity(intent);*/
    break;
}}

}
您应该在onClick中放置“str1”字符串、textview和edittext代码

像这样:

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId())
{

case R.id.b1:
et1 = (EditText) findViewById (R.id.et1);
tv2 = (TextView) findViewById (R.id.tv2);
str1 = et1.getText().toString();
    tv2.setText(str1);
/*Bundle bun = new Bundle();
bun.putString("key", str1);
bun.putString("key1", str2);;
Intent intent = new Intent(tictactoe2.this , tictactoe.class);
intent.putExtras(bun); 
startActivity(intent);*/
break;

}}我想你得到了
NPE
。您需要删除此行

 str1 = et1.getText().toString();
 str2 = et2.getText().toString();
这是因为您试图从
EditText
获取
getText()
,但其中没有文本。因此,我建议您将这些行移到一些
侦听器事件下,在
编辑文本中设置值后,您可以在这些事件下获取值

你执行起来像

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId())
{
 case R.id.b1:
 str1 = et1.getText().toString();
 str2 = et2.getText().toString();
 tv2.setText(str1);
}}

什么不起作用?您是否遇到异常,代码是否未按预期工作?请提供堆栈跟踪或在单击中准确描述哪些内容不工作GetTextButton@user3671445
NPE
表示
空指针异常
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId())
{
 case R.id.b1:
 str1 = et1.getText().toString();
 str2 = et2.getText().toString();
 tv2.setText(str1);
}}