我一直被困在这个问题上太久了。我认为这很简单,但我是一个新手android开发人员,所以你的帮助将不胜感激。
我有两个活动。我的主要活动布局有一个文本视图和一个按钮。我正在尝试做的是实现按钮以从另一个活动类(Btn类)更改文本视图的文本。
这是我的Btn课
public class Btn extends Activity implements OnClickListener {
Button btn;
TextView textBox;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.btn);
textBox = (TextView)findViewById(R.id.address);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
textBox.setText("Test Test");
}
}
现在,这编译和工程罚款,但当我按下按钮没有发生.我想知道如何改变文本视图的文本,当我按下按钮.我知道如何做到这一点在我的主要活动类,但我想做它从另一个类。
请尝试实现以下代码,
MainActivity.java
public class MainActivity extends Activity implements OnClickListener {
Button btn;
TextView textBox;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.btn);
textBox = (TextView)findViewById(R.id.address);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn:
String strTemp = "Test Test";
textBox.setText(strTemp);
Intent intent = new Intent(MainActivity.this, Second.class);
intent.putExtra("tempstring", strTemp);
startActivity(intent);
break;
default:
break;
}
}
}
Second.java
public class Second extends Activity {
private TextView txtTemp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
txtTemp = (TextView) findViewById(R.id.txt_temp);
Intent intent = getIntent();
String strTemp = intent.getStringExtra("tempstring");
txtTemp.setText(strTemp);
}
}
希望它对你有用。