我的学习Android应用程序开发的作业,我需要帮助,我只是一个初学者。 在我的代码(我没有写它,它是研究的一部分)的方法onCreate,onSrart,onRestart,onResume,onPause,onStop我每次都重复以下行:
ausgabe += "First Activity - \"onStart\" durchlaufen\"n;
tvAnzeige.setText(ausgabe);
我的任务是将这两行存储在方法addText(String text)中,这样每次我只调用此方法而不是使用重复。 我的问题是我该怎么做?伪代码将非常有用。 我提前感谢您提供任何帮助或信息,这是我的代码:
public class FirstActivity extends Activity
{
private String ausgabe = "";
public TextView tvAnzeige;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button button = (Button) this.findViewById(R.id.second_activity);
button.setOnClickListener(new ButtonOnClickListener());
tvAnzeige = (TextView) this.findViewById(R.id.anzeige);
ausgabe += "FirstActivity - \"onCreate\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onStart()
{
super.onStart();
ausgabe += "FirstActivity - \"onStart\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onResume()
{
super.onResume();
ausgabe += "FirstActivity -\"onResume\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onPause()
{
super.onPause();
ausgabe += "FirstActivity -\"onPause\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onStop()
{
super.onStop();
ausgabe += "FirstActivity -\"onStop\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onRestart()
{
super.onRestart();
ausgabe += "FirstActivity -\"onRestart\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
//inner listener class
class ButtonOnClickListener implements OnClickListener
{
@Override
public void onClick(View view)
{
ausgabe += "Button \"second Activity\" geklickt\n";
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
try
{
FirstActivity.this.startActivity(intent);
} catch (ActivityNotFoundException anfe)
{
ausgabe += anfe.toString() + "\n";
tvAnzeige.setText(ausgabe);
}
}
}
}
答案 0 :(得分:0)
尝试这样的事情:
@Override
protected void onStart()
{
super.onStart();
addText("FirstActivity - \"onStart\" durchlaufen\n");
}
@Override
protected void onResume()
{
super.onResume();
addText("FirstActivity -\"onResume\" durchlaufen\n");
}
... (more methods)
void addText(final String text) {
ausgabe += text;
tvAnzeige.setText(ausgabe);
}
答案 1 :(得分:0)
似乎很简单,除非您的作业有更多要求。但由于这是一项家庭作业,请尝试回答,我们可以帮助您学习。一般的想法是,您将创建一个方法来执行所概述的操作。
假设你有一个helloworld类,你想反复调用一个方法和一些信息。
public class HelloWorld {
public static void main(String []args){
greetMe("Bill");
}
public static void greetMe(String name){
System.out.println( String.format("Hello %s", name));
}
}
这会输出 Hello Bill
您可以将相同的概念应用于作业。
答案 2 :(得分:0)
您可以使用此
public class FirstActivity extends ActionBarActivity {
private String ausgabe = "";
public TextView tvAnzeige;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) this.findViewById(R.id.second_activity);
tvAnzeige = (TextView) this.findViewById(R.id.anzeige);
button.setOnClickListener(new ButtonOnClickListener());
ausgabe += "FirstActivity - \"onCreate\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
private void addText(String text){
ausgabe += "FirstActivity -\""+text+"\" durchlaufen\n";
tvAnzeige.setText(ausgabe);
}
@Override
protected void onStart()
{
super.onStart();
addText("onStart");
}
@Override
protected void onResume()
{
super.onResume();
addText("onResume");
}
@Override
protected void onPause()
{
super.onPause();
addText("onPause");
}
@Override
protected void onStop()
{
super.onStop();
addText("onStop");
}
@Override
protected void onRestart()
{
super.onRestart();
addText("onRestart");
}
class ButtonOnClickListener implements OnClickListener
{
@Override
public void onClick(View view)
{
ausgabe += "Button \"second Activity\" geklickt\n";
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
try
{
FirstActivity.this.startActivity(intent);
} catch (ActivityNotFoundException anfe)
{
ausgabe += anfe.toString() + "\n";
tvAnzeige.setText(ausgabe);
}
}
}
}
答案 3 :(得分:0)
以下是答案,感谢那些再次帮助我的人:
public class FirstActivity extends Activity {
private String ausgabe="";
public TextView tvAnzeige;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
Button button =(Button)this.findViewById(R.id.second_activity);
button.setOnClickListener(new ButtonOnClickListener());
tvAnzeige =(TextView)this.findViewById(R.id.anzeige);
addText("FirstActivity - \"onCreate\" durchlaufen\n");
//ausgabe += "FirstActivity - \"onCreate\" durchlaufen\n";
//tvAnzeige.setText(ausgabe);
}
@Override
protected void onStart(){
super.onStart();
addText("FirstActivity - \"onStart\" durchlaufen\n");
//ausgabe += "FirstActivity - \"onStart\" durchlaufen\n";
//tvAnzeige.setText(ausgabe);
}
@Override
protected void onResume(){
super.onResume();
addText("FirstActivity - \"onResume\" durchlaufen\n");
//ausgabe += "FirstActivity -\"onResume\" durchlaufen\n";
//tvAnzeige.setText(ausgabe);
}
@Override
protected void onPause(){
super.onPause();
addText("FirstActivity - \"onPause\" durchlaufen\n");
//tvAnzeige.setText(ausgabe);
}
@Override
protected void onStop(){
super.onStop();
addText("FirstActivity - \"onStop\" durchlaufen\n");
//tvAnzeige.setText(ausgabe);
}
@Override
protected void onRestart(){
super.onRestart();
addText("FirstActivity - \"onRestart\" durchlaufen\n");
//tvAnzeige.setText(ausgabe);
}
public void addText(String text){
ausgabe += text;
tvAnzeige.setText(ausgabe);
}
//inner listener class
class ButtonOnClickListener implements OnClickListener {
@Override
public void onClick(View view) {
addText("Button \"second Activity\" geklickt\n");
Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
try {
FirstActivity.this.startActivity(intent);
}catch (ActivityNotFoundException anfe){
ausgabe += anfe.toString() + "\n";
tvAnzeige.setText(ausgabe);
}
}
}}
</code>