Google のガイドラインに従って、DrawerLayout
アプリをインストールして開いた後に初めて開くことをお勧めします (ユーザーに機能を示すため)。
これをどのように行うつもりですか?
openDrawer()
ある種の好みと方法の組み合わせになるようです。
Google のガイドラインに従って、DrawerLayout
アプリをインストールして開いた後に初めて開くことをお勧めします (ユーザーに機能を示すため)。
これをどのように行うつもりですか?
openDrawer()
ある種の好みと方法の組み合わせになるようです。
そのためにSharedPreferencesを使用することをお勧めします。
基本的な考え方は、SharedPreferences を読み取り、アプリの最初の起動時にそこに存在しないブール値を探すことです。デフォルトでは、探している値が見つからなかった場合は「true」を返します。これは、実際に最初のアプリの起動であることを示します。次に、最初のアプリの起動後に SharedPreferences に値 "false" を保存し、次回の起動時に SharedPreferences から値 "false" を読み取り、それが最初のアプリ起動ではないことを示します。
これがどのように見えるかの例です:
@Override
protected void onCreate(Bundle savedInstanceState) {
// your other code...
// setContentView(...) initialize drawer and stuff like that...
// use thread for performance
Thread t = new Thread(new Runnable() {
@Override
public void run() {
SharedPreferences sp = Context.getSharedPreferences("yoursharedprefs", 0);
boolean isFirstStart = sp.getBoolean("key", true);
// we will not get a value at first start, so true will be returned
// if it was the first app start
if(isFirstStart) {
mDrawerLayout.openDrawer(mDrawerList);
Editor e = sp.edit();
// we save the value "false", indicating that it is no longer the first appstart
e.putBoolean("key", false);
e.commit();
}
}
});
t.start();
}