Учусь на курсах програмирования. У меня есть два идентичных активити
package android.and02.lektion2;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.content.Intent;
import android.content.ActivityNotFoundException;
public class FirstActivity extends Activity
{
private String ausgabe=" ";
public TextView tvAnzeige;
private void addText(String text)
{
ausgabe+=text;
tvAnzeige.setText(ausgabe);
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
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");
}
@Override
protected void onStart()
{
super.onStart();
addText("FirstActivity- \"onStart\" durchlaufen\n");
}
@Override
protected void onResume()
{
super.onResume();
addText("FirstActivity- \"onResume\" durchlaufen\n");
}
@Override
protected void onPause()
{
super.onPause();
addText("FirstActivity- \"onPause\" durchlaufen\n");
}
@Override
protected void onRestart()
{
super.onRestart();
addText("FirstActivity- \"onRestart\" durchlaufen\n");
}
@Override
protected void onStop()
{
super.onStop();
addText("FirstActivity- \"onStop\" durchlaufen\n");
}
//Innere Listener-Klasse:
class ButtonOnClickListener implements OnClickListener
{
@Override
public void onClick(View view)
{
ausgabe+="Button \"second_activity\" geklickt\n ";
Intent intent=new Intent(FirstActivity.this,SecondActivity.class);
FirstActivity.this.startActivity(intent);
}
}
}
Возможно ли вытащить этот метод
private void addText(String text)
{
ausgabe+=text;
tvAnzeige.setText(ausgabe);
}
чтобы оба могли его использовать. сам попробовал но не хватает знаний, выдает ошибки.
import android.widget.TextView;
public class addText extends Object
{
private String ausgabe=" ";
public TextView tvAnzeige;
private void addText(String text)
{
ausgabe+=text;
tvAnzeige.setText(ausgabe);
}
}
Я бы предложил вообще не повторятся используя ООП.
Создадим базовую активити:
public abstract class BaseActivity extends Activity{
private String ausgabe=" ";
public TextView tvAnzeige;
private void addText(String text){
ausgabe+=text;
tvAnzeige.setText(ausgabe);
}
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
tvAnzeige=(TextView)this.findViewById(R.id.anzeige);
addText(this.getClass().getSimpleName() + " onCreate\" durchlaufen\n");
}
}
А потом использовать примерно так:
public class FirstActivity extend BaseActivity{
//onCreate/onStart...
}
И аналогично вторую.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть класс, который наследуется от Service, этот класс вызывает уведомление
много раз пользовался fotorama, но дошло дело до того, чтобы вынести стрелки управления за пределы контейнера и все - срабатывает overflow:hidden, а без...
Как это влияет на работу сайта и индексацию в поисковых системах?
Не работает :focus не могу понять почему,с :active и :hover все хорошо, что не так?