#java #android #android-layout #android-activity
#java #Android #android-layout #android-активность
Вопрос:
есть ли другой код для выхода из приложения? я не знаю, почему это не работает здесь, это работало у меня все время. возможно, это связано с моим XML-файлом, я думаю, что он тяжелый, или мой код нуждается в исправлении.
вот мой код
package ir.whitegate.guardians;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;
public class MainActivity extends Activity {
Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
addListenerOnButton();
getActionBar().hide();
}
public void addListenerOnButton() {
final Context context = this;
button = (Button) findViewById(R.id.buttonstory);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(context, Story.class);
startActivity(intent);
}
public void EXIT(View view)
{
finish();
}
});
}
}
и вот мой xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="@drawable/mainsithis">
<RelativeLayout
android:layout_height="82dp"
android:layout_width="match_parent">
<HorizontalScrollView
android:layout_height="wrap_content"
android:layout_width="wrap_content">
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="82dp"
android:orientation="horizontal">
<Button
android:layout_height="82dp"
android:layout_width="35dp"
android:background="@drawable/toleft"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/bios"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/howtoread"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/about"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/writer"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/rateit"/>
<Button
android:layout_height="match_parent"
android:layout_width="82dp"
android:background="@drawable/moreapps"/>
<Button
android:layout_height="82dp"
android:layout_width="35dp"
android:background="@drawable/toright"/>
</LinearLayout>
</HorizontalScrollView>
</RelativeLayout>
<LinearLayout
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_weight="0.25"
android:background="@drawable/rainbow"/>
<LinearLayout
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_weight="0.80">
<Button
android:id="@ id/buttonstory"
android:layout_height="65dp"
android:layout_width="wrap_content"
android:background="@drawable/starttoread"
android:layout_weight="1.0"/>
<Button
android:layout_height="65dp"
android:layout_width="wrap_content"
android:background="@drawable/exit"
android:layout_weight="1.0"
android:onClick="EXIT"/>
</LinearLayout>
Комментарии:
1. поставить трассировку стека ошибок
2. не могли бы вы показать это в коде, пожалуйста?
3. Это журнал ошибок, который поступает в logcat
4. спасибо, что он работает сейчас
Ответ №1:
Вы должны переместить метод EXIT в класс из button clicklistener.
Измените метод addListenerOnButton, как показано ниже
public void addListenerOnButton() {
final Context context = this;
button = (Button) findViewById(R.id.buttonstory);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(context, Story.class);
startActivity(intent);
}
});
}
public void EXIT(View view)
{
finish();
}
Ответ №2:
изменить
Intent intent = new Intent(context, Story.class);
Для
Намерение intent = новое намерение (MainActivity.this, Story.class );
неправильный контекст параметра
Переместите это в buttonStory
android:onClick="EXIT"
и добавьте код в MainActivity.
public void EXIT(View view)
{
finish();
}