询问名称一次并在之后存储

时间:2011-08-09 21:57:56

标签: java android string android-intent boolean

我想要的是,当Activity第一次启动时,它首先检查nimiolemas是否为真。因为它刚刚开始,所以它不可能是真的。因此,它会自动启动新活动,并要求我获取信息。在活动2中,人们可以输入他们的姓名,当他们按下确定时,信息将被发送回活动一。现在,我真的不知道如何将Boolean更改为true并发送它,所以现在我告诉在启动活动2之前更改nimiolemas true。

按下确定后,它会返回活动1并再次进行检查。既然它现在应该是真的并且还能够检索有关人名的信息,那么它将进入真实状态并在第一个活动中在屏幕上打印该名称。现在每当程序启动时,它都会跳过询问名称并直接显示人名:)。

但它并不完全符合我的要求。在我使用布尔值之前,它实际上进入了第二个活动,但我无法获得如此好的数据。我一直在研究解决方案太久了,我真的很感激帮助。如果我发现错误,我可以从中学习,然后在整个互联网上搜索解决方案,接下来的10个小时:(。

我可能做了一些非常错误的事情,所以请让我知道并教我!我真的希望在这方面做得更好!到目前为止,我已经完成了:


package viimane.voimalus;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class MainStuff extends Activity {

    String tyybinimi;
    TextView tere;

    Boolean nimiolemas;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.menu);
        tere = (TextView) findViewById(R.id.TERE);
        Intent i = new Intent(this, nimekysija.class);
        tyybinimi = i.getStringExtra("nimi");

        if (nimiolemas = true) {
            System.out.print(tyybinimi);
        } else {
            startActivity(i);
            nimiolemas = true;
            finish();
        }

    }
}

package viimane.voimalus;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
package viimane.voimalus;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class nimekysija extends Activity {

    Intent resultIntent;
    EditText nimi;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.nimekysija);
        Button kysOk = (Button) findViewById(R.id.bNimekysija);
        nimi = (EditText) findViewById(R.id.etNimekysija);

        kysOk.setOnClickListener(new View.OnClickListener() {
        String nimiS = nimi.getText().toString();


            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent i = new Intent();
                i.putExtra("nimi", nimiS);
                startActivity(new Intent("viimane.voimalus.MAIN"));
                finish();


            }
        });
    }

}

1 个答案:

答案 0 :(得分:0)

您应该使用Shared Preferences

,而不是使用boolean