Сохранение целого числа на клике, чтобы позже его можно было вызвать в приложении для Android - PullRequest
0 голосов
/ 07 февраля 2012

Вероятно, у меня есть весь код, и в нем нет ошибок (в соответствии с затмением), но когда я пытаюсь открыть "page1" в моем приложении, оно зависает, а затем вылетает, если я получаю удовольствие от всех addPointsИнформация на странице работает нормально, можете ли вы помочь мне выяснить причину сбоя?Спасибо!вот мой код

package com.canadais.civics;

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

public class page1 extends Activity implements OnClickListener 
{

    TextView Q1A1;
    TextView Q1A2;

    public static final String PREFS_NAME = "MyPrefsFile";
    SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
    public int testScore = (settings.getInt("YourScore", 0));
    Intent page2 = new Intent (this, Page2.class);

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test);
        Q1A1 = (TextView) findViewById(R.id.Q1A1);
        Q1A2 = (TextView) findViewById(R.id.Q1A2);
        Q1A1.setOnClickListener(this);
        Q1A2.setOnClickListener(this);
        //test = (TextView) findViewById(R.id.test);






        //test.setText(settings.getInt("YourScore", 0));


    }
    public void onClick(View v) 
    {
        switch(v.getId())
        {
        case R.id.Q1A1:
            addPoints(10);
            //Intent page2 = new Intent (this, Page2.class);
            startActivity(page2);
            break;
        case R.id.Q1A2:
            addPoints(5);
            //Intent page22 = new Intent (this, Page2.class);
            startActivity(page2);
            break;
        }   
    }



    public void addPoints(int points) 
    {
        SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
        SharedPreferences.Editor editor = settings.edit();
        editor.putInt("YourScore", (testScore + points));
        editor.commit();       
    }

}

1 Ответ

0 голосов
/ 07 февраля 2012

Существует несколько возможных причин возникновения проблем после выполнения startActivity () .Я могу думать о двух прямо сейчас:

  1. Отсутствует объявление активности в AndroidManifest.xml ;
  2. Неверные коды в деятельности ( Page2.java в вашем случае).

Чтобы убедиться, с какой ошибкой вы столкнулись, я предлагаю вам научиться публиковать сообщение об ошибке, появившееся в LogCat, которое входит в состав Android SDK, но не одно.всплывающее окно на экране телефона, в противном случае никто не сможет точно выяснить проблему (проблемы).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...