如何实现android程序第一次登陆时显示初始界面?【菜鸟初次提问,请各位大虾多多关照>0<】

共享大家使用 2012-05-11 02:45:31

就是第一次使用时,才会出现的界面,之后就不会再出现的界面。我知道是登陆界面上的onCreate()中要查询记录,可能是一个bool值,判断它,如果为true则进入启动初次设置界面的那个activity。否则就进入其他界面。但是,那个bool值放哪里保存啊~~。是放在String.xml里面吗??还是什么??

小女就才自学android一个多礼拜。。。。各位麻烦讲的详细一点。。。最好有例子。。。谢谢各位T.T。。

...全文
677 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
共享大家使用 2012-05-12
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

引用 11 楼 的回复:

引用 10 楼 的回复:

引用 5 楼 的回复:

SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由……
[/Quote]

非常感谢!!!!受教了~
manoel 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

引用 10 楼 的回复:

引用 5 楼 的回复:

SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为fals……
[/Quote]
请看以下的代码片段。

public class MainActivity extends Activity {

private static final String TAG = "SavingState";
final String INITIALIZED = "initialized";
private String someString;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

SharedPreferences myPrefs = getPreferences(MODE_PRIVATE);

boolean hasPreferences = myPrefs.getBoolean(INITIALIZED, false);

if(hasPreferences) {
Log.v(TAG, "We've been called before");
// Read other values as desired from preferences file? someString = myPrefs.getString("someString", "");
}
else {
Log.v(TAG, "First time ever being called");
// Set up initial values for what will end up
// in the preferences file
someString = "some default value";
}

Log.v(TAG, "someString = " + someString);

// Later when ready to write out values
Editor editor = myPrefs.edit();
editor.putBoolean(INITIALIZED, true);
editor.putString("someString", someString);
// Write other values as desired
editor.commit();
}
}
共享大家使用 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

引用 5 楼 的回复:

SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为false了,就不会初始化你的那个界面了。……
[/Quote]

可是我不知道在什么时候新建一个SharedPreferences文件啊,555555~~~~~泪
manoel 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为false了,就不会初始化你的那个界面了。
[/Quote]
嗯,这个方法可行,我用过的。
共享大家使用 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

引用 5 楼 的回复:
SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为false了,就不会初始化你的那个界面了。
……
[/Quote]
可是我发现个问题,我在什么时候新建一个SharePreferences的文件啊。如果是第一次使用这个软件,然后就调用SharePreferences中的boolean值,那我在什么时候存好这个值呢。。。
hellonihao100 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为false了,就不会初始化你的那个界面了。
[/Quote]



这方法 就很好
sunsh1989 2012-05-11
  • 打赏
  • 举报
回复
你说的是登录界面吧,为登录界面新建一个activity,在这里面可以设置保存bool值,然后根据这个值判断是否跳转到其他activity,即是否跳到其他界面。
zy1235678 2012-05-11
  • 打赏
  • 举报
回复
设个全局变量,在第一此启动时改变其值就可以了吧!!
murongshusheng 2012-05-11
  • 打赏
  • 举报
回复
SharedPreferences 存储一个boolean值,在onCreate()方法中判断这个boolean值,如果为true就显示你的初始化界面,显示初始化界面之后将存储到SharedPreferences 的boolean值设置为false,这样在你下次进入到这个activity的时候,由于你将boolean值置为false了,就不会初始化你的那个界面了。
共享大家使用 2012-05-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

也可以随便建个类,用来存变量值
[/Quote]

那个,建个类里面存数据的话,里面的数据不是每次运行这个软件的时候都会被初始化嘛?
共享大家使用 2012-05-11
  • 打赏
  • 举报
回复
哦~好的~多谢指点~
树_皮 2012-05-11
  • 打赏
  • 举报
回复
也可以随便建个类,用来存变量值
android_Y 2012-05-11
  • 打赏
  • 举报
回复
你可以用SharedPreferences试试

80,360

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧